Rev 16635 | Rev 16649 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 16635 | Rev 16641 | ||
|---|---|---|---|
| Line 31... | Line 31... | ||
| 31 | !set slib_xmin=$($slib_zone[1]) |
31 | !set slib_xmin=$($slib_zone[1]) |
| 32 | !set slib_xmax=$($slib_zone[2]) |
32 | !set slib_xmax=$($slib_zone[2]) |
| 33 | !set slib_ymin=$($slib_zone[3]) |
33 | !set slib_ymin=$($slib_zone[3]) |
| 34 | !set slib_ymax=$($slib_zone[4]) |
34 | !set slib_ymax=$($slib_zone[4]) |
| 35 | slib_xy=$slib_xb,$slib_yb,$slib_xe,$slib_ye |
35 | slib_xy=$slib_xb,$slib_yb,$slib_xe,$slib_ye |
| - | 36 | !distribute items $slib_xy into slib_xb,slib_yb,slib_xe,slib_ye |
|
| - | 37 | !!--- calculs pour trouver down ou up |
|
| - | 38 | !if $slib_pos= |
|
| - | 39 | !set slib_L=$[sqrt((($slib_xe-$slib_xb)^2)+(($slib_ye-$slib_yb)^2))] |
|
| - | 40 | !set slib_xm=$[($slib_xe+$slib_xb)/2] |
|
| - | 41 | !set slib_ym=$[($slib_ye+$slib_yb)/2] |
|
| - | 42 | !set slib_m=$[max($[$slib_xmax-$slib_xmin],$[$slib_ymax-$slib_ymin])] |
|
| - | 43 | !set slib_b=$[min($[$slib_xmax-$slib_xm],$[$slib_ymax-$slib_ym])] |
|
| - | 44 | !set slib_d=$[min($[$slib_xm-$slib_xmin],$[$slib_ym-$slib_ymin])] |
|
| - | 45 | !set slib_s=$[max($[($slib_m-$slib_L)/4],$[$slib_m/10])] |
|
| - | 46 | !if $slib_s < $slib_b |
|
| - | 47 | !set slib_pos=up |
|
| - | 48 | !else |
|
| - | 49 | !set slib_pos=down |
|
| - | 50 | !endif |
|
| - | 51 | !endif |
|
| - | 52 | !!on change un peu les extrémités |
|
| 36 | !distribute item 0,0,0,0, into slib_signxb,slib_signyb,slib_signxe,slib_signye |
53 | !distribute item 0,0,0,0, into slib_signxb,slib_signyb,slib_signxe,slib_signye |
| 37 | !set slib_ss=1 |
54 | !set slib_ss=1 |
| 38 | !if $slib_pos=up |
55 | !if $slib_pos=up |
| 39 | !set slib_ss=1 |
56 | !set slib_ss=1 |
| 40 | !endif |
57 | !endif |
| 41 | !if $slib_pos=down |
58 | !if $slib_pos=down |
| 42 | !set slib_ss=-1 |
59 | !set slib_ss=-1 |
| 43 | !endif |
60 | !endif |
| 44 | !if $slib_xb < $slib_xe and $slib_yb < $slib_ye |
61 | !if $slib_xb < $slib_xe and $slib_yb < $slib_ye |
| 45 | !if $slib_pos=up |
- | |
| 46 | !distribute item 1,1,-1,0 into slib_signxb,slib_signyb,slib_signxe,slib_signye |
- | |
| 47 | !else |
- | |
| 48 | !distribute item |
62 | !distribute item $slib_ss,$slib_ss,-($slib_ss),-($slib_ss) into slib_signxb,slib_signyb,slib_signxe,slib_signye |
| 49 | !endif |
- | |
| 50 | !endif |
63 | !endif |
| 51 | !if $slib_xb < $slib_xe and $slib_yb > $slib_ye |
64 | !if $slib_xb < $slib_xe and $slib_yb > $slib_ye |
| 52 | !distribute item |
65 | !distribute item 1,-($slib_ss),-1,$slib_ss into slib_signxb,slib_signyb,slib_signxe,slib_signye |
| 53 | !endif |
66 | !endif |
| 54 | !if $slib_xb < $slib_xe and $slib_yb = $slib_ye |
67 | !if $slib_xb < $slib_xe and $slib_yb = $slib_ye |
| 55 | !distribute item 1,$slib_ss,-1,$slib_ss into slib_signxb,slib_signyb,slib_signxe,slib_signye |
68 | !distribute item 1,$slib_ss,-1,$slib_ss into slib_signxb,slib_signyb,slib_signxe,slib_signye |
| 56 | !endif |
69 | !endif |
| 57 | !if $slib_xb > $slib_xe and $slib_yb < $slib_ye |
70 | !if $slib_xb > $slib_xe and $slib_yb < $slib_ye |
| 58 | !distribute item - |
71 | !distribute item -1,$slib_ss,1,$slib_ss into slib_signxb,slib_signyb,slib_signxe,slib_signye |
| 59 | !endif |
72 | !endif |
| 60 | !if $slib_xb > $slib_xe and $slib_yb > $slib_ye |
73 | !if $slib_xb > $slib_xe and $slib_yb > $slib_ye |
| 61 | !if $slib_pos=up |
- | |
| 62 |
|
74 | !distribute item -1,-($slib_ss),1,$slib_ss into slib_signxb,slib_signyb,slib_signxe,slib_signye |
| 63 | !else |
- | |
| 64 | !distribute item -1,0,1,0 into slib_signxb,slib_signyb,slib_signxe,slib_signye |
- | |
| 65 | !endif |
- | |
| 66 | !endif |
75 | !endif |
| 67 | !if $slib_xb > $slib_xe and $slib_yb = $slib_ye |
76 | !if $slib_xb > $slib_xe and $slib_yb = $slib_ye |
| 68 | !distribute item -1,$slib_ss,1,$slib_ss into slib_signxb,slib_signyb,slib_signxe,slib_signye |
77 | !distribute item -1,$slib_ss,1,$slib_ss into slib_signxb,slib_signyb,slib_signxe,slib_signye |
| 69 | !endif |
78 | !endif |
| 70 | !if $slib_xb = $slib_xe and $slib_yb > $slib_ye |
79 | !if $slib_xb = $slib_xe and $slib_yb > $slib_ye |
| Line 85... | Line 94... | ||
| 85 | slib_xy=!exec pari [$slib_xy]+3*[$slib_tmp] |
94 | slib_xy=!exec pari [$slib_xy]+3*[$slib_tmp] |
| 86 | 95 | ||
| 87 | !distribute items $slib_xy into slib_xb,slib_yb,slib_xe,slib_ye |
96 | !distribute items $slib_xy into slib_xb,slib_yb,slib_xe,slib_ye |
| 88 | !!--- calculs preliminaires |
97 | !!--- calculs preliminaires |
| 89 | !set slib_L=$[sqrt((($slib_xe-$slib_xb)^2)+(($slib_ye-$slib_yb)^2))] |
98 | !set slib_L=$[sqrt((($slib_xe-$slib_xb)^2)+(($slib_ye-$slib_yb)^2))] |
| 90 | 99 | ||
| 91 | !set slib_xm=$[($slib_xe+$slib_xb)/2] |
100 | !set slib_xm=$[($slib_xe+$slib_xb)/2] |
| 92 | !set slib_ym=$[($slib_ye+$slib_yb)/2] |
101 | !set slib_ym=$[($slib_ye+$slib_yb)/2] |
| 93 | 102 | ||
| 94 | !set slib_m=$[max($[$slib_xmax-$slib_xmin],$[$slib_ymax-$slib_ymin])] |
103 | !set slib_m=$[max($[$slib_xmax-$slib_xmin],$[$slib_ymax-$slib_ymin])] |
| 95 | !set slib_b=$[min($[$slib_xmax-$slib_xm],$[$slib_ymax-$slib_ym])] |
104 | !set slib_b=$[min($[$slib_xmax-$slib_xm],$[$slib_ymax-$slib_ym])] |
| Line 100... | Line 109... | ||
| 100 | !if $slib_pos issametext up |
109 | !if $slib_pos issametext up |
| 101 | !set slib_h=$[min($slib_s,$slib_b)] |
110 | !set slib_h=$[min($slib_s,$slib_b)] |
| 102 | !else |
111 | !else |
| 103 | !if $slib_pos issametext down |
112 | !if $slib_pos issametext down |
| 104 | !set slib_h=$[-min($slib_s,$slib_d)] |
113 | !set slib_h=$[-min($slib_s,$slib_d)] |
| 105 | !else |
- | |
| 106 | !if $slib_s < $slib_b |
- | |
| 107 | !set slib_h=$slib_s |
- | |
| 108 | !else |
- | |
| 109 | !set slib_h=$[-min($slib_s,$slib_d)] |
- | |
| 110 | !endif |
- | |
| 111 | !endif |
114 | !endif |
| 112 | !endif |
115 | !endif |
| 113 | 116 | ||
| 114 | !!--- determination XC,YC |
117 | !!--- determination XC,YC |
| 115 | 118 | ||