Subversion Repositories wimsdev

Rev

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 1,0,-1,-1 into slib_signxb,slib_signyb,slib_signxe,slib_signye
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 1,0,-1,$slib_ss into slib_signxb,slib_signyb,slib_signxe,slib_signye
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 -1,0,1,0 into slib_signxb,slib_signyb,slib_signxe,slib_signye
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
    !distribute item -1,$slib_ss,1,0 into slib_signxb,slib_signyb,slib_signxe,slib_signye
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