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 |