1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
!if $wims_read_parm!=slib_header
!goto proc
!endif
slib_author=Fabrice, Guerimand
!exit
:proc
slib_input=$wims_read_parm
!distribute items $slib_input into a,b,mx,my,Mx,My
slib_out=$slib_input
liste=$empty
tmp=$[$mx*($a)+($b)]
!ifval $tmp<=$My and $tmp>=$my
liste=!append line $mx,$tmp to $liste
!endif
tmp=$[$Mx*($a)+($b)]
!ifval $tmp<=$My and $tmp>=$my
liste=!append line $Mx,$tmp to $liste
!endif
tmp=!linecnt $liste
!if $tmp=2
!goto end
!endif
tmp=$[($my-($b))/($a)]
!ifval $tmp<=$Mx and $tmp>=$mx
liste=!append line $tmp,$my to $liste
!endif
tmp=$[($My-($b))/($a)]
!ifval $tmp<=$Mx and $tmp>=$mx
liste=!append line $tmp,$My to $liste
!endif
:end
tmp=!linecnt $liste
!if $tmp<2
slib_out=error
!else
slib_out=!line 1 to 2 of $liste
!endif
|