Rev 18542 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 18542 | Rev 18546 | ||
---|---|---|---|
Line 11... | Line 11... | ||
11 | slib_out=dessin du pavage affine par des triangles ou code ou url selon les cas |
11 | slib_out=dessin du pavage affine par des triangles ou code ou url selon les cas |
12 | 12 | ||
13 | slib_comment=Les angles du triangle de base sont 2pi/p,2pi/q,2pi/r avec 1/p+1/q+1/r=1/2.\ |
13 | slib_comment=Les angles du triangle de base sont 2pi/p,2pi/q,2pi/r avec 1/p+1/q+1/r=1/2.\ |
14 | le deuxième paramètre bound permet de faire afficher environ bound^2 triangles.\ |
14 | le deuxième paramètre bound permet de faire afficher environ bound^2 triangles.\ |
15 | Attention, si bound est trop grand, il y aura une erreur de WIMS. |
15 | Attention, si bound est trop grand, il y aura une erreur de WIMS. |
16 | slib_example=[ |
16 | slib_example=[3,3,3,3,3,3],0.001,size=400 color=black html type=3\ |
- | 17 | [4,4,4,4],0.001,size=400 color=black html type=3\ |
|
- | 18 | [3,4,6,4],0.001,size=400 color=black html type=3\ |
|
- | 19 | [3,6,3,6],0.001,size=400 color=[black,red] html type=3\ |
|
17 | [ |
20 | [3,4,6,4],0.01,size=400 color=black html type=1\ |
- | 21 | [3,4,6,4],0.001,size=400 color=black html type=3\ |
|
- | 22 | [3,4,6,4],0.001,size=400 color=black html type=1\ |
|
18 | [ |
23 | [3,4,6,4],0.01,size=400 color=black html type=2\ |
19 | [4,6,12] |
24 | [4,6,12],0.01,size=400 color=black html type=1\ |
20 | [ |
25 | [4,6,12],0.01,size=400 color=black html type=2\ |
21 | [ |
26 | [4,6,12],0.01,size=400 color=[black,red] html type=3\ |
- | 27 | [3,4,6,4],0.01,size=400 color=black html type=3\ |
|
22 | [ |
28 | [3,4,6,4],0.01,size=400 color=black html type=3\ |
23 | [4,8,8] |
29 | [4,8,8],0.01,size=400 color=black html type=3\ |
- | 30 | [3,3,3,3,3,3],5,size=400 color=black html type=3\ |
|
- | 31 | ||
24 | !exit |
32 | !exit |
25 | :proc |
33 | :proc |
26 | 34 | ||
27 | !reset |
35 | !reset slib_Test slib_type slib_type0 slib_bound slib_size slib_color slib_dessin slib_dessin1 slib_dessin2 slib_dessin3 slib_depl slib_fill slib_dual |
28 | !distribute items $wims_read_parm into slib_data,slib_bound,slib_option |
36 | !distribute items $wims_read_parm into slib_data,slib_bound,slib_option |
- | 37 | !set slib_gpprog=afftiling |
|
- | 38 | !if $slib_bound<0.01 |
|
- | 39 | !!reset slib_bound |
|
- | 40 | !endif |
|
- | 41 | !set wims_multiexec=$wims_multiexec pari |
|
- | 42 | !default slib_bound=0.01 |
|
29 | !set slib_size=!getopt size in $slib_option |
43 | !set slib_size=!getopt size in $slib_option |
30 | !default slib_size=600 |
44 | !default slib_size=600 |
31 | !set slib_color=!getopt color in $slib_option |
45 | !set slib_color=!getopt color in $slib_option |
32 | !set slib_color=!declosing $slib_color |
46 | !set slib_color=!declosing $slib_color |
- | 47 | !set slib_type=!getopt type in $slib_option |
|
33 | !default slib_color=black |
48 | !default slib_color=black |
- | 49 | !set slib_color=$slib_color,$(slib_color[1]) |
|
- | 50 | !set slib_color=$(slib_color[1,2]) |
|
- | 51 | !set slib_fill=!getopt fill in $slib_option |
|
- | 52 | !set slib_fill=!declosing $slib_fill |
|
- | 53 | !set slib_depl=!getopt depl in $slib_option |
|
- | 54 | !default slib_depl=0 |
|
34 | !default |
55 | !default slib_type=1 |
35 | !set slib_pqr=!declosing $slib_data |
56 | !set slib_pqr=!declosing $slib_data |
- | 57 | !set slib_pqr=!exec pari [$slib_pqr] |
|
- | 58 | !if regular notin $slib_option |
|
- | 59 | !set slib_n=!itemcnt $slib_pqr |
|
- | 60 | !set slib_testexist=!exec pari a=[$slib_pqr];test=vecsum(vector($slib_n,i,1/a[i]))!=($slib_n-2)/2;if(a[1]%2==1, test+=a[$slib_n]!=a[2]);a=concat(a,a[1]);for(i=2,$slib_n,if(a[i]%2==1,test+=a[i-1]!=a[i+1])); test |
|
- | 61 | !if $slib_testexist>0 |
|
- | 62 | !set slib_out=error $slib_testexist>0 |
|
- | 63 | !if $slib_testexist>0 |
|
- | 64 | !exit |
|
- | 65 | !endif |
|
- | 66 | !endif |
|
- | 67 | !if regular isin $slib_option |
|
36 | !if |
68 | !if $[1/$(slib_pqr[1])+1/$(slib_pqr[2])]!=1/2 |
37 | slib_out=Error |
69 | slib_out=Error regular |
38 | !exit |
70 | !exit |
- | 71 | !endif |
|
- | 72 | !set slib_pqr=!makelist $(slib_pqr[2]) for x=1 to $(slib_pqr[1]) |
|
39 | !endif |
73 | !endif |
40 | !set |
74 | !set slib_testint=!exec pari t=[$slib_pqr]; t-round(t)==0 |
41 | !if |
75 | !if $slib_testint!=1 |
42 |
|
76 | slib_out=Error integers |
43 |
|
77 | !exit |
44 | !endif |
78 | !endif |
45 |
|
79 | !!if $(slib_header_$slib_gpprog)= |
46 |
|
80 | !readproc gp/$slib_gpprog.gp |
47 |
|
81 | !set slib_tiling=!exec pari tikz=0;$(slib_header_$slib_gpprog); |
- | 82 | !!endif |
|
48 |
|
83 | slib_depl:0 pas au centre |
49 |
|
84 | 1 au centre |
50 |
|
85 | !default slib_type=1 |
- | 86 | 1-> 1,2 |
|
51 | 87 | 2-> 3,4 |
|
52 |
|
88 | 3- > le faire en deux fois. |
53 |
|
89 | !set slib_type0=$slib_type |
54 |
|
90 | !if $slib_type=3 |
55 |
|
91 | !set slib_type0=1,2 |
56 | !set slib_dessin=!append line ftriangle $(slib_data[$slib_k;1..6]),$slib_col to $slib_dessin |
- | |
57 |
|
92 | !else |
58 |
|
93 | !set slib_type0=$slib_type |
- | 94 | !endif |
|
- | 95 | !set slib_tiling=!exec pari wwww=wims_catalan([$slib_pqr],$slib_bound,$slib_depl,$(slib_type0[1]));default(realprecision,3);wwww |
|
59 |
|
96 | !set slib_data=!trim $(slib_tiling[2*$(slib_type0[1])-1,2*$(slib_type0[1])]) |
60 |
|
97 | !if $(slib_type0[1])=1 |
61 |
|
98 | !if fill iswordof $slib_option |
- | 99 | !set slib_pol=fpolygon |
|
62 |
|
100 | !default slib_color=black,white |
63 |
|
101 | !else |
- | 102 | !set slib_pol=polygon |
|
64 |
|
103 | !set slib_col=$(slib_color[1]) |
65 |
|
104 | !endif |
66 |
|
105 | !else |
67 |
|
106 | !set slib_pol=rays |
- | 107 | !set slib_col=$(slib_color[1]) |
|
68 |
|
108 | !endif |
- | 109 | !readproc slib/geo2D/offtiling |
|
69 |
|
110 | !if $slib_type=3 |
70 | - | ||
- | 111 | !set slib_type0=2 |
|
- | 112 | !set slib_tiling=!exec pari wwww=wims_catalan([$slib_pqr],$slib_bound,$slib_depl,$(slib_type0));default(realprecision,3);wwww |
|
71 | !set |
113 | !set slib_data=!trim $(slib_tiling[2*$(slib_type0)-1,2*$(slib_type0)]) |
- | 114 | !set slib_pol=rays |
|
- | 115 | !set slib_col=$(slib_color[2]) |
|
- | 116 | !readproc slib/geo2D/offtiling |
|
- | 117 | !endif |
|
72 | slib_out=xrange $slib_range\ |
118 | !set slib_out=xrange $slib_range\ |
73 | yrange $slib_range\ |
119 | yrange $slib_range\ |
74 | $slib_dessin\ |
120 | $slib_dessin\ |
75 | $slib_dessin1\ |
121 | $slib_dessin1\ |
76 | $slib_dessin2\ |
122 | $slib_dessin2\ |
77 | $slib_dessin3 |
123 | $slib_dessin3 |
78 | - | ||
79 | !if url iswordof $slib_option or html iswordof $slib_option |
124 | !if url iswordof $slib_option or html iswordof $slib_option |
80 | !set insdraw_size=$slib_size,$slib_size |
125 | !set insdraw_size=$slib_size,$slib_size |
81 | !insdraw $slib_out |
126 | !insdraw $slib_out |
82 | slib_out=$ins_url |
127 | !set slib_out=$ins_url |
83 | !if html iswordof $slib_option |
128 | !if html iswordof $slib_option |
- | 129 | !if alt iswordof $slib_option |
|
- | 130 | !set slib_alt=[$slib_pqr] |
|
- | 131 | !else |
|
- | 132 | !reset slib_alt |
|
- | 133 | !endif |
|
84 | slib_out=<img src="$ins_url" alt=""> |
134 | !set slib_out=<img src="$ins_url" alt="$slib_alt"> |
85 | !else |
135 | !else |
86 | slib_out=$slib_out,$insdraw_size |
136 | !set slib_out=$slib_out,$insdraw_size |
87 | !endif |
137 | !endif |
88 | !endif |
138 | !endif |
89 | - |