Subversion Repositories wimsdev

Rev

Rev 17083 | Go to most recent revision | 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\
17526 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
16944 bpr 17
 
20 reyssat 18
!exit
19
 
20
:proc
17083 bpr 21
!reset slib_option slib_scriptanim slib_format slib_animstep facecolor bondcolor atomcolor
17079 bpr 22
slib_data =!item 1 of $wims_read_parm
23
 
16944 bpr 24
slib_data=!declosing $slib_data
14219 bpr 25
slib_option= !item -1 of $wims_read_parm
20 reyssat 26
 
17079 bpr 27
!for slib_a in animstep label,scale,box,bonds,bgcolor,bondcolor,atomcolor,facecolor,format,width,height,id, show
14219 bpr 28
  !reset slib_$slib_a
20 reyssat 29
  slib_$slib_a=!getopt $slib_a in $slib_option
30
!next slib_a
17079 bpr 31
!default slib_animstep=1
20 reyssat 32
!default slib_label=false
14219 bpr 33
!default slib_bgcolor=white
34
!default slib_bondcolor=yellow
20 reyssat 35
!default slib_box=true
36
!default slib_bonds=true
37
!default slib_scale=0.8
17002 bpr 38
!default slib_width=400
39
!default slib_height=400
14219 bpr 40
!default slib_id=!randint 1000,3000
20 reyssat 41
slib_out=
42
slib_cnt_word=!wordcnt $slib_data
16944 bpr 43
slib_cnt_item=!itemcnt $slib_data
44
!if $slib_cnt_word=1 and $slib_cnt_item=1
20 reyssat 45
  slib_data=!record 0 of data/polyedre_off/$slib_data.off
46
  slib_format=off
14219 bpr 47
  slib_atomes=$slib_data
16944 bpr 48
  slib_atomes=!translate ; to $\
49
$ in $slib_atomes
20 reyssat 50
!else
17079 bpr 51
  !if $slib_animstep>1
52
    slib_atomes=$(slib_data[1;])
53
    !for slib_k=1 to $slib_animstep
54
      !set slib_atomes$slib_k=!item $slib_k of $slib_atomes
55
      !set slib_atomes$slib_k=!declosing $(slib_atomes$slib_k)
56
      !set slib_atomes$slib_k=!replace internal , by $ $ in $(slib_atomes$slib_k)
57
      !set slib_atomes$slib_k=!translate ; to $\
58
$ in $(slib_atomes$slib_k)
59
      !set slib_atomes$slib_k=!translate $	$ to $\
60
$ in $(slib_atomes$slib_k)
61
    !next
62
    !set slib_faces=$(slib_data[2..-1;])
17526 bpr 63
    !set slib_tmp=!declosing $slib_faces
64
    !for slib_k=1 to $slib_animstep
65
      !if $slib_tmp=$slib_faces
66
        !set slib_faces$slib_k=$(slib_faces)
67
      !else
68
        !set slib_faces$slib_k=$(slib_tmp[$slib_k;])
69
      !endif
70
    !set slib_faces$slib_k=!replace internal , by $ $ in $(slib_faces$slib_k)
71
    !set slib_faces$slib_k=!translate $	$ to $\
72
$ in $(slib_faces$slib_k)
73
    !next
17079 bpr 74
  !else
75
    slib_data=!replace internal , by $ $ in $slib_data
76
    slib_atomes=!translate $	$ to $\
77
$ in $slib_data
78
  !endif
20 reyssat 79
!endif
80
 
16996 bpr 81
!default slib_show=,AA,
16944 bpr 82
!!careful confusion with slib_width in off2jmol
83
!set slib_width_v=$(slib_width)
84
!set slib_height_v=$(slib_height)
17079 bpr 85
!!! FIXME: séparer en deux les deux générations de fichiers.
86
!if $slib_animstep=1
87
  !readproc slib/geo3D/off2jmol $slib_atomes,[$slib_show],[ ,$slib_bondcolor,],[0.01,0.01],url distance
88
  !readproc slib/chemistry/jmolshow $(slib_out[2]),$slib_height_v,$slib_width_v,$slib_bgcolor,script "$(slib_out[1])"; zoom 130,$(slib_id)
89
!else
90
  !set slib_spt=yes
91
  !for slib_k=1 to $slib_animstep
92
    !set slib_dat=$(slib_atomes$slib_k)\
17526 bpr 93
$(slib_faces$slib_k)
94
!readproc slib/geo3D/off2jmol [$slib_dat],[$slib_show],[ ,$slib_bondcolor,],[0.01,0.01],url distance id=$(slib_id)_$slib_k spt=$slib_spt
95
    !set slib_filespt$slib_k=$(slib_out[1])
96
    !set slib_scriptanim=!append item ['load $(slib_out[2]);load $(slib_filespt$slib_k)', "$[$slib_k-1]"]\
17079 bpr 97
  to $slib_scriptanim
98
  !next
99
  !set slib_scriptanim=<script>Jmol.jmolRadioGroup(XXXXX,[$slib_scriptanim])</script>
100
  !readproc slib/chemistry/jmolshow $(slib_out[2]),$slib_height_v,$slib_width_v,$slib_bgcolor,script "$(slib_out[1])"; zoom 130,$(slib_id)
101
!endif
17002 bpr 102
$slib_out