Subversion Repositories wimsdev

Rev

Rev 4158 | Rev 8521 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

!if $wims_read_parm!=slib_header
 !goto proc
!endif

slib_author=Fabrice, Guerimand
slib_example=200,200,10,[[0,0],[8,8]],[[0,0],[1,1],[3,0],[0,5],[2,3]],black,grey,red,x,y
!exit


:proc
slib_input=$wims_read_parm

!distribute items $slib_input into slib_xsize,slib_ysize,slib_marge,slib_cadrage,slib_point,slib_colora,slib_colorg,slib_colorl,slib_legendex,slib_legendey

!default slib_xsize=400
!default slib_ysize=400
!default slib_marge=20
!default slib_cadrage=[[0,0],[20,20]]
!default slib_colora=black
!default slib_colorl=black
!default slib_colorg=grey
!default slib_legendex=x
!default slib_legendey=y

slib_cadrage=!declosing $slib_cadrage
!distribute item $slib_cadrage into slib_X,slib_Y
slib_X=!declosing $slib_X
slib_Y=!declosing $slib_Y
!distribute item $slib_X into slib_xmin,slib_ymin
!distribute item $slib_Y into slib_xmax,slib_ymax

slib_ex=$[($slib_xsize-2*$slib_marge)/($slib_xmax-$slib_xmin)]
slib_ey=$[-($slib_ysize-2*$slib_marge)/($slib_ymax-$slib_ymin)]
slib_x0=$[$slib_marge]
slib_y0=$[$slib_ysize-$slib_marge]

slib_point=!declosing $slib_point
slib_out=$empty
slib_coordpt=$empty
slib_nb=!itemcnt $slib_point
!for slib_k=1 to $slib_nb
 slib_coord=!item $slib_k of $slib_point
 slib_coord=!declosing $slib_coord
 !distribute item $slib_coord into slib_x,slib_y
 slib_nbx=!charcnt $slib_x
 slib_nby=!charcnt $slib_y
 slib_nbx=$[$slib_nbx*8]
 slib_nby=$[$slib_nby*8+4]
 slib_y2=$[($slib_y-$slib_ymin)*$slib_ey]
 slib_x2=$[($slib_x-$slib_xmin)*$slib_ex]
 slib_coordpt=!append item $slib_x0+$slib_x2,$slib_y0+$slib_y2 to $slib_coordpt
 slib_out=$slib_out\
dlines $slib_colorg,$slib_x0,$slib_y0+$slib_y2,$slib_x0+$slib_x2,$slib_y0+$slib_y2,$slib_x0+$slib_x2,$slib_y0\
text $slib_colora,$slib_x0-$slib_nby,$slib_y0+$slib_y2-5,medium,$slib_y\
text $slib_colora,$slib_x0+$slib_x2-$slib_nbx/2+4,$slib_y0+10,medium,$slib_x
!next slib_k
slib_dec=!charcnt $slib_legendex
slib_dec=$[$slib_dec*8+4]
slib_out=$slib_out\
linewidth 2\
arrow $slib_x0,$slib_y0,$slib_xsize,$slib_y0,20,$slib_colora\
arrow $slib_x0,$slib_y0,$slib_x0,0,20,$slib_colora\
lines $slib_colorl,$slib_coordpt\
text $slib_colora,$slib_xsize-$slib_dec,$slib_ysize-$slib_marge-20,medium,$slib_legendex\
text $slib_colora,$slib_marge+15,10,medium,$slib_legendey