Subversion Repositories wimsdev

Rev

Rev 13592 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
6556 bpr 1
!if $wims_read_parm!=slib_header
13592 bpr 2
  !goto proc
6556 bpr 3
!endif
6988 bpr 4
slib_author=Bernadette, Perrin-Riou
5
 
6556 bpr 6
slib_parms=9\
7
,f1\
8
,f2\
9
-2,xmin\
6988 bpr 10
2,xmax\
11
-2,ymin\
12
2,ymax\
6556 bpr 13
red,color\
6988 bpr 14
0,size of the arrow\
6575 bpr 15
,option: html, url\
6556 bpr 16
 
17
slib_example= x+2-y, x^2-y,-2,2,-2,2,green,8,html\
6575 bpr 18
x+y,x-y,,,,,,,html\
19
x+y,x-y
6556 bpr 20
!exit
21
 
22
:proc
23
slib_out=
24
 
25
!distribute items $wims_read_parm into slib_f1, slib_f2,slib_XMIN,slib_XMAX,slib_YMIN,slib_YMAX,slib_color,slib_ARROW_WIDTH
26
slib_option=$($wims_read_parm[-1])
27
!default slib_LIM = 20
28
!default slib_NTEST = 50
29
!default slib_MINDIV = 2
30
!default slib_MAXCOUNT = 50
31
!default slib_XDIV = 25
32
!default slib_YDIV = 25
33
!default slib_zoom = 2.0
34
!default slib_XMIN = -$slib_zoom
35
!default slib_YMIN = -$slib_zoom
36
!default slib_XMAX = $slib_zoom
37
!default slib_YMAX = $slib_zoom
38
!default slib_ARROW_LEN = 3
39
!default slib_ARROW_WIDTH = 0
40
!default slib_color=red
41
 
9755 bpr 42
!readproc slib/analysis/phase.gp
43
slib_prog =$program_gp
6556 bpr 44
slib_image = !exec pari color=$slib_color ;\
45
dx(x,y) = $slib_f1;\
46
dy(x,y) = $slib_f2;\
47
LIM = $slib_LIM; NTEST = $slib_NTEST; MINDIV = $slib_MINDIV; MAXCOUNT = $slib_MAXCOUNT;\
48
XDIV = $slib_XDIV; YDIV = $slib_YDIV; XMIN = $slib_XMIN; YMIN = $slib_YMIN; XMAX = $slib_XMAX;\
49
YMAX = $slib_YMAX; ARROW_LEN = $slib_ARROW_LEN; ARROW_WIDTH = $slib_ARROW_WIDTH ;\
50
$slib_prog ; print([img,ARROW]);
51
 
52
slib_image = !declosing $slib_image
53
!distribute items $slib_image into slib_image, slib_ARROW
54
slib_ARROW = !exec pari mattranspose($slib_ARROW)
55
slib_image = !declosing $slib_image
56
slib_img = !trim $slib_image
57
slib_img = !nonempty lines $slib_img
58
slib_img = !declosing $slib_img
59
 
60
slib_img2 =
61
slib_img_cnt =!itemcnt $slib_img
62
!for slib_i = 2 to $slib_img_cnt
13592 bpr 63
  slib_im = !item $slib_i of $slib_img
64
  slib_im = !exec pari mattranspose($slib_im)
65
  slib_im =!declosing $slib_im
66
  slib_im = polyline $slib_color, $slib_im
67
  slib_img2 = !append line $slib_im to $slib_img2
6556 bpr 68
!next slib_i
69
 
70
slib_img = !translate internal ; to $\
71
$ in $slib_img2
72
slib_ARROW = !translate internal ; to $\
73
$ in $slib_ARROW
74
slib_ARROW = !replace internal arrow, by arrow $    in $slib_ARROW
75
 
76
slib_out = $slib_img
77
 
78
!if $slib_ARROW_WIDTH != 0
13592 bpr 79
  slib_out =$slib_out\
80
  $slib_ARROW
6556 bpr 81
!endif
6575 bpr 82
slib_out=xrange $slib_XMIN, $slib_XMAX\
83
yrange $slib_YMIN, $slib_YMAX\
84
hline 0,0,black\
85
vline 0,0,black\
86
$slib_out
6556 bpr 87
 
88
!if url iswordof $slib_option or html iswordof $slib_option
89
  insdraw_size=200,200
90
  !insdraw $slib_out
91
  slib_out=$ins_url
92
  !if html iswordof $slib_option
17173 bpr 93
    slib_out=<img src="$ins_url" alt="">
13592 bpr 94
  !else
6556 bpr 95
    slib_out=$slib_out,$insdraw_size
13592 bpr 96
  !endif
6556 bpr 97
!endif