File: brokenlinegraph

package info (click to toggle)
wims 2%3A4.29a%2Bdfsg1-3
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 185,704 kB
  • sloc: xml: 366,687; javascript: 120,570; ansic: 62,341; java: 62,170; sh: 7,744; perl: 3,937; yacc: 3,217; cpp: 1,915; lex: 1,805; makefile: 1,084; lisp: 914; pascal: 601; python: 520; php: 318; asm: 7
file content (78 lines) | stat: -rw-r--r-- 2,740 bytes parent folder | download | duplicates (2)
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
!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\
200,200,10,[[0,0],[8,8]],[[0,0],[1,1],[2,1],[1,5],[4,3],[6,7]],black,grey,red,x,y,html
!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,slib_option

!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\
    dpolyline $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\
polyline $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

!if url iswordof $slib_option or html iswordof $slib_option
  insdraw_size1=$insdraw_size
  insdraw_size=$slib_xsize,$slib_ysize
  !insdraw $slib_out
  slib_out=$ins_url
  !if html iswordof $slib_option
    slib_out=<img src="$ins_url" alt="">
  !else
    slib_out=$slib_out,$insdraw_size
  !endif
  insdraw_size=$insdraw_size1
!endif