Subversion Repositories wimsdev

Rev

Rev 6557 | Rev 16998 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed


!if $wims_read_parm!=slib_header
 !goto proc
!endif

slib_author=Bernadette, Perrin-Riou

slib_example=c2h2f2,label=false scale=0.8 height=300 width=300\
cl2o,label=true scale=1 height=300 width=300
!exit

:proc

slib_data = !item 1 of $wims_read_parm
slib_option= !item -1 of  $wims_read_parm

slib_atom=
!default slib_cnt=0
slib_cnt= $[$slib_cnt +1]

Préliminaires : mettre dans un fichier la correspondance
atome couleur, rayon.
!for slib_a in label,scale,box,bonds,bgcolor,bondcolor,format,width,height
  slib_$slib_a=!getopt $slib_a in $slib_option
!next slib_a

!default slib_label=false
!default slib_bgcolor=000000
!default slib_bondcolor=9966CC
!default slib_box=false
!default slib_bonds=true
!default slib_scale=0.8
!default slib_format=pdb
!default slib_width=300
!default slib_height=300

slib_out=
slib_cnt_word=!wordcnt $slib_data
!if $slib_cnt_word=1
  slib_data=!record 0 of data/molecule_pdb/$slib_data.pdb
!endif
!if $slib_format issametext pdb
slib_nr=!linecnt $slib_data
slib_atomes=
slib_liens=
slib_Atom=
slib_data= !replace internal , by . in $slib_data
!for slib_i=1 to $slib_nr
   slib_l=!line $slib_i of $slib_data
   slib_n=!charcnt $slib_l
   slib_nom=!char 1 to 6 of $slib_l
   slib_nom = !nospace $slib_nom
   !if $slib_nom iswordof HETATM ATOM
     slib_atom=!char 13 to 14 of $slib_l
     slib_L =!char 32 to 54 of $slib_l
     slib_L = $slib_atom $slib_L
     slib_atomes=!append line $slib_L to $slib_atomes
     slib_atom=!trim $slib_atom
     slib_atom1=!lookup $slib_atom in slib/chemistry/atom
     !if $slib_atom1!=$empty
       slib_atom2=!item 4,3 of $slib_atom1
       slib_atom2 = !items2words $slib_atom2
       slib_Atom=!append line ATOM $slib_atom $slib_atom2  to $slib_Atom
     !endif
   !endif
   !if $slib_nom issametext COMPND
     slib_nommolecule=!words 2 of $slib_l
   !endif
   !if $slib_nom issametext CONECT
     slib_L = !char 10 to -1 of $slib_l
     slib_L = !words2items $slib_L
     slib_liens=!append line $slib_L to $slib_liens
   !endif
!next i
slib_nbatomes=!linecnt $slib_atomes
slib_nbliens=!linecnt $slib_liens

!for slib_nb=1 to $slib_nbliens
   slib_r=!line $slib_nb of $slib_liens
   slib_cnt_r=!itemcnt $slib_r
   slib_lien1=!item 1 of $slib_r
   slib_lien2=!item 2 to -1 of $slib_r
   slib_lien2=!items2words $slib_lien2
   slib_r1=!line $slib_lien1 of $slib_atomes
   slib_r1=$slib_r1 $slib_lien2
   slib_atomes=!replace internal line number $slib_lien1 by $slib_r1 in $slib_atomes
!next slib_nb
!else
slib_atomes=$slib_data
!endif
slib_atomes=!translate $        $ to $\
$ in $slib_atomes

slib_fichier=fichier.$slib_cnt
!readproc oef/togetfile.proc $slib_fichier new\
$slib_Atom\
$slib_atomes

slib_out=$wims_ref_name?session=$session&+cmd=getfile&+special_parm=$slib_fichier

slib_out=<object type="application/x-java-applet;jpi-version=1.4" \
 classid="java:LatticeViewer.class" width="$slib_width" height="$slib_height">\
<param name="java_codebase" value="java/Lattice" />\
<param name="java_code" value="LatticeViewer.class" />\
<param name="java_archive" value="Lattice.jar" />\
<param name="model" value="$slib_out" />\
<param name="label"    value="$slib_label" />\
<param name="scale"    value="$slib_scale" />\
<param name="box"      value="$slib_box" />\
<param name="bonds"    value="$slib_bonds" />\
<param name="bgcolor"  value="$slib_bgcolor" />\
<param name="bondcolor" value="$slib_bondcolor" />\
</object>