Rev 17526 | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
20 | reyssat | 1 | !if $wims_read_parm!=slib_header |
13593 | bpr | 2 | !goto proc |
20 | reyssat | 3 | !endif |
4158 | bpr | 4 | |
4351 | bpr | 5 | slib_author=Bernadette, Perrin-Riou |
14219 | bpr | 6 | slib_title=3Dviewer |
4158 | bpr | 7 | |
17081 | bpr | 8 | slib_example=j87_augmented_sphenocorona,bondcolor=red id=1 show=[,AA,FF]\ |
16944 | bpr | 9 | rhombicosidodecahedron,label=false scale=1 height=400 width=400 bgcolor=blue id=2\ |
16996 | bpr | 10 | cube,label=false scale=0.8 height=300 width=300 id=3 show=[,AA,FF]\ |
17079 | bpr | 11 | [14,6;-1.00,-1.00,-1;1.00,-1.00,-1;1.00,1.00,-1;-1.00,1.00,-1;-1.00,-1.00,1.00;1.00,-1.00,1.00;-1.00,1.00,-1.00;-1.00,1.00,1.00;1.00,1.00,-1.00;1.00,1.00,1.00;-1.00,-1.00,1.00;1.00,-1.00,1.00;1.00,-1.00,1.00;1.00,1.00,1.00;4,10,7,9,11;4,6,8,9,7;4,0,6,7,4;4,2,1,12,13;4,1,0,4,5;4,0,1,2,3],bondcolor=red scale=0.8 height=500 width=500 show=[,AA,FF]\ |
12 | [14,6;-1.00,-1.00,-1;1.00,-1.00,-1;1.00,1.00,-1;-1.00,1.00,-1;-1.00,-3.00,-1.00;1.00,-3.00,-1.00;-3.00,-1.00,-1.00;-3.00,-3.00,-1.00;-5.00,-1.00,-1.00;-5.00,-3.00,-1.00;-3.00,-5.00,-1.00;-5.00,-5.00,-1.00;3.00,-1.00,-1.00;3.00,1.00,-1.00;4,10,7,9,11;4,6,8,9,7;4,0,6,7,4;4,2,1,12,13;4,1,0,4,5;4,0,1,2,3],bondcolor=blue scale=0.8 height=500 width=500 show=[,AA,FF]\ |
||
16996 | bpr | 13 | [14,6;-1.00,-1.00,-1;1.00,-1.00,-1;1.00,1.00,-1;-1.00,1.00,-1;-1.00,-2.41,0.414;1.00,-2.41,0.414;-2.41,3.25E-19,-2.17E-19;-2.41,-1.41,1.41;-2.41,1.41,1.41;-2.41,0.E-18,2.83;-1.00,-2.41,2.41;-1.00,-1.00,3.83;2.41,-1.00,0.414;2.41,1.00,0.414;4,10,7,9,11;4,6,8,9,7;4,0,6,7,4;4,2,1,12,13;4,1,0,4,5;4,0,1,2,3],scale=0.8 height=500 width=500 show=[,AA,FF]\ |
14 | [14,6;-1.00,-1.00,-1;1.00,-1.00,-1;1.00,1.00,-1;-1.00,1.00,-1;-1.00,-1.62,0.902;1.00,-1.62,0.902;-1.62,0.809,-0.412;-1.62,0.191,1.49;4.34E-19,1.93,-0.0489;4.34E-19,1.31,1.85;-0.500,-1.46,1.60;1.12,-0.345,1.97;1.62,-1.00,0.902;1.62,1.00,0.902;4,10,7,9,11;4,6,8,9,7;4,0,6,7,4;4,2,1,12,13;4,1,0,4,5;4,0,1,2,3],scale=0.8 height=500 width=500 show=[SS,AA,FF]\ |
||
17081 | bpr | 15 | [[3,1;1,0,0;0,1,0;0,0,1],[3,1;1,0,0;0,1,0;0,0,2],[3,1;1,0,0;0,1,0;0,0,3];3,0,1,2],bondcolor=red scale=0.8 height=500 width=500 show=[,AA,FF] id=tr animstep=3\ |
18185 | bpr | 16 | [[3,1;1,0,0;0,1,0;0,0,1;3,0,1,2],[3,1;1,0,0;0,1,0;0,0,2;3,0,1,2],[3,1;1,0,0;0,1,0;0,0,3;3,0,1,2]],bondcolor=red scale=0.8 height=500 width=500 show=[,AA,FF] id=ts animstep=3\ |
17 | [62 120;-0.526,-0.000,-0.851;-0.526,-0.000,0.851;-0.309,0.500,0.809;-0.309,0.500,-0.809;-0.357,0.934,-0.000;-0.357,-0.934,0.000;-0.309,-0.500,-0.809;-0.309,-0.500,0.809;0.000,-0.357,-0.934;0.000,-0.357,0.934;0.000,0.000,-1.000;0.000,0.000,1.000;0.000,0.357,0.934;0.000,0.357,-0.934;0.000,1.000,0.000;0.000,0.851,0.526;0.000,0.851,-0.526;0.000,-0.851,-0.526;0.000,-0.851,0.526;0.000,-1.000,0.000;0.526,0.000,-0.851;0.526,0.000,0.851;0.309,0.500,0.809;0.309,0.500,-0.809;0.357,0.934,0.000;0.357,-0.934,0.000;0.309,-0.500,-0.809;0.309,-0.500,0.809;1.000,0.000,0.000;0.851,-0.526,0.000;0.851,0.526,0.000;0.577,0.577,-0.577;0.577,0.577,0.577;0.500,0.809,0.309;0.500,0.809,-0.309;0.500,-0.809,-0.309;0.500,-0.809,0.309;0.577,-0.577,-0.577;0.577,-0.577,0.577;0.809,-0.309,-0.500;0.809,-0.309,0.500;0.934,0.000,0.357;0.934,0.000,-0.357;0.809,0.309,-0.500;0.809,0.309,0.500;-0.809,-0.309,-0.500;-0.809,-0.309,0.500;-0.934,-0.000,-0.357;-0.934,-0.000,0.357;-0.809,0.309,-0.500;-0.809,0.309,0.500;-0.851,-0.526,0.000;-0.851,0.526,-0.000;-0.577,0.577,-0.577;-0.577,0.577,0.577;-0.500,0.809,0.309;-0.500,0.809,-0.309;-0.500,-0.809,0.309;-0.500,-0.809,-0.309;-0.577,-0.577,-0.577;-0.577,-0.577,0.577;-1.000,-0.000,-0.000;3,0,8,6,1;3,1,9,7,0;3,0,13,3,0;3,1,12,2,1;3,0,8,10,0;3,1,9,11,1;3,0,13,10,1;3,1,12,11,0;3,0,47,45,0;3,1,48,46,1;3,0,47,49,1;3,1,48,50,0;3,0,53,3,1;3,1,54,2,0;3,0,59,6,0;3,1,60,7,1;3,0,53,49,0;3,1,54,50,1;3,0,59,45,1;3,1,60,46,0;3,15,4,14,0;3,16,4,14,1;3,17,5,19,0;3,18,5,19,1;3,15,4,55,1;3,16,4,56,0;3,17,5,58,1;3,18,5,57,0;3,15,12,2,0;3,16,13,3,1;3,17,8,6,0;3,18,9,7,1;3,15,12,22,1;3,16,13,23,0;3,17,8,26,1;3,18,9,27,0;3,15,24,14,1;3,16,24,14,0;3,17,25,19,1;3,18,25,19,0;3,15,24,33,0;3,16,24,34,1;3,17,25,35,0;3,18,25,36,1;3,15,32,22,0;3,16,31,23,1;3,17,37,26,0;3,18,38,27,1;3,15,32,33,1;3,16,31,34,0;3,17,37,35,1;3,18,38,36,0;3,15,54,2,1;3,16,53,3,0;3,17,59,6,1;3,18,60,7,0;3,15,54,55,0;3,16,53,56,1;3,17,59,58,0;3,18,60,57,1;3,20,8,10,1;3,21,9,11,0;3,20,13,10,0;3,21,12,11,1;3,20,8,26,0;3,21,9,27,1;3,20,13,23,1;3,21,12,22,0;3,20,31,23,0;3,21,32,22,1;3,20,37,26,1;3,21,38,27,0;3,20,31,43,1;3,21,32,44,0;3,20,37,39,0;3,21,38,40,1;3,20,42,39,1;3,21,41,40,0;3,20,42,43,0;3,21,41,44,1;3,29,25,35,1;3,29,25,36,0;3,30,24,33,1;3,30,24,34,0;3,29,37,35,0;3,29,38,36,1;3,30,31,34,1;3,30,32,33,0;3,29,37,39,1;3,29,38,40,0;3,30,31,43,0;3,30,32,44,1;3,29,41,28,0;3,29,42,28,1;3,30,41,28,1;3,30,42,28,0;3,29,41,40,1;3,29,42,39,0;3,30,41,44,0;3,30,42,43,1;3,51,5,57,1;3,51,5,58,0;3,52,4,55,0;3,52,4,56,1;3,51,47,45,1;3,51,48,46,0;3,52,47,49,0;3,52,48,50,1;3,51,47,61,0;3,51,48,61,1;3,52,47,61,1;3,52,48,61,0;3,51,59,45,0;3,51,60,46,1;3,52,53,49,1;3,52,54,50,0;3,51,59,58,1;3,51,60,57,0;3,52,53,56,0;3,52,54,55,1],bondcolor=[blue,red] facecolor=[green,red] id=15 show=[,AA,FF] |
||
16944 | bpr | 18 | |
20 | reyssat | 19 | !exit |
20 | |||
21 | :proc |
||
17083 | bpr | 22 | !reset slib_option slib_scriptanim slib_format slib_animstep facecolor bondcolor atomcolor |
17079 | bpr | 23 | slib_data =!item 1 of $wims_read_parm |
24 | |||
16944 | bpr | 25 | slib_data=!declosing $slib_data |
14219 | bpr | 26 | slib_option= !item -1 of $wims_read_parm |
20 | reyssat | 27 | |
17079 | bpr | 28 | !for slib_a in animstep label,scale,box,bonds,bgcolor,bondcolor,atomcolor,facecolor,format,width,height,id, show |
14219 | bpr | 29 | !reset slib_$slib_a |
20 | reyssat | 30 | slib_$slib_a=!getopt $slib_a in $slib_option |
31 | !next slib_a |
||
17079 | bpr | 32 | !default slib_animstep=1 |
20 | reyssat | 33 | !default slib_label=false |
14219 | bpr | 34 | !default slib_bgcolor=white |
35 | !default slib_bondcolor=yellow |
||
20 | reyssat | 36 | !default slib_box=true |
37 | !default slib_bonds=true |
||
38 | !default slib_scale=0.8 |
||
17002 | bpr | 39 | !default slib_width=400 |
40 | !default slib_height=400 |
||
14219 | bpr | 41 | !default slib_id=!randint 1000,3000 |
20 | reyssat | 42 | slib_out= |
43 | slib_cnt_word=!wordcnt $slib_data |
||
16944 | bpr | 44 | slib_cnt_item=!itemcnt $slib_data |
45 | !if $slib_cnt_word=1 and $slib_cnt_item=1 |
||
20 | reyssat | 46 | slib_data=!record 0 of data/polyedre_off/$slib_data.off |
47 | slib_format=off |
||
14219 | bpr | 48 | slib_atomes=$slib_data |
16944 | bpr | 49 | slib_atomes=!translate ; to $\ |
50 | $ in $slib_atomes |
||
20 | reyssat | 51 | !else |
17079 | bpr | 52 | !if $slib_animstep>1 |
53 | slib_atomes=$(slib_data[1;]) |
||
54 | !for slib_k=1 to $slib_animstep |
||
55 | !set slib_atomes$slib_k=!item $slib_k of $slib_atomes |
||
56 | !set slib_atomes$slib_k=!declosing $(slib_atomes$slib_k) |
||
57 | !set slib_atomes$slib_k=!replace internal , by $ $ in $(slib_atomes$slib_k) |
||
58 | !set slib_atomes$slib_k=!translate ; to $\ |
||
59 | $ in $(slib_atomes$slib_k) |
||
60 | !set slib_atomes$slib_k=!translate $ $ to $\ |
||
61 | $ in $(slib_atomes$slib_k) |
||
62 | !next |
||
63 | !set slib_faces=$(slib_data[2..-1;]) |
||
17526 | bpr | 64 | !set slib_tmp=!declosing $slib_faces |
65 | !for slib_k=1 to $slib_animstep |
||
66 | !if $slib_tmp=$slib_faces |
||
67 | !set slib_faces$slib_k=$(slib_faces) |
||
68 | !else |
||
69 | !set slib_faces$slib_k=$(slib_tmp[$slib_k;]) |
||
70 | !endif |
||
71 | !set slib_faces$slib_k=!replace internal , by $ $ in $(slib_faces$slib_k) |
||
72 | !set slib_faces$slib_k=!translate $ $ to $\ |
||
73 | $ in $(slib_faces$slib_k) |
||
74 | !next |
||
17079 | bpr | 75 | !else |
76 | slib_data=!replace internal , by $ $ in $slib_data |
||
77 | slib_atomes=!translate $ $ to $\ |
||
78 | $ in $slib_data |
||
79 | !endif |
||
20 | reyssat | 80 | !endif |
81 | |||
16996 | bpr | 82 | !default slib_show=,AA, |
16944 | bpr | 83 | !!careful confusion with slib_width in off2jmol |
84 | !set slib_width_v=$(slib_width) |
||
85 | !set slib_height_v=$(slib_height) |
||
17079 | bpr | 86 | !!! FIXME: séparer en deux les deux générations de fichiers. |
87 | !if $slib_animstep=1 |
||
18185 | bpr | 88 | !readproc slib/geo3D/off2jmol $slib_atomes,[$slib_show],[ ,[$slib_bondcolor],[$slib_facecolor]],[0.01,0.01],url distance |
17079 | bpr | 89 | !readproc slib/chemistry/jmolshow $(slib_out[2]),$slib_height_v,$slib_width_v,$slib_bgcolor,script "$(slib_out[1])"; zoom 130,$(slib_id) |
90 | !else |
||
91 | !set slib_spt=yes |
||
92 | !for slib_k=1 to $slib_animstep |
||
93 | !set slib_dat=$(slib_atomes$slib_k)\ |
||
17526 | bpr | 94 | $(slib_faces$slib_k) |
95 | !readproc slib/geo3D/off2jmol [$slib_dat],[$slib_show],[ ,$slib_bondcolor,],[0.01,0.01],url distance id=$(slib_id)_$slib_k spt=$slib_spt |
||
96 | !set slib_filespt$slib_k=$(slib_out[1]) |
||
97 | !set slib_scriptanim=!append item ['load $(slib_out[2]);load $(slib_filespt$slib_k)', "$[$slib_k-1]"]\ |
||
17079 | bpr | 98 | to $slib_scriptanim |
99 | !next |
||
100 | !set slib_scriptanim=<script>Jmol.jmolRadioGroup(XXXXX,[$slib_scriptanim])</script> |
||
101 | !readproc slib/chemistry/jmolshow $(slib_out[2]),$slib_height_v,$slib_width_v,$slib_bgcolor,script "$(slib_out[1])"; zoom 130,$(slib_id) |
||
102 | !endif |
||
17002 | bpr | 103 | $slib_out |