|
Please, note that these methods do not use the Jmol.js library, which is
the currently recommended method to start scripting JmolApplet.
L'application et l'applet supportent toutes les deux un langage
de script. Les exemples ci-dessous utilisent l'applet, mais les
scripts peuvent aussi être utilisés dans
l'application Jmol. Nous recommandons de tester et de
débuguer les grands scripts dans le contexte de
l'application Jmol car vous pouvez recevoir des messages de
diagnostic d'erreur.
Jmol implémente un grand sous-ensemble du langage de
script de visualisation moléculaire RasMol/Chime.
Une
description complète du langage de script RasMol est
disponible dans le manuel RasMol sur le site web Open RasMol
à
http://www.openrasmol.org
.
Une description des extensions du langage de script pour le
plug-in MDL Chime est disponible à
http://www.mdlchime.com.
Une description de l'implémentation Jmol du langage de
script est disponible dans le
Documentation Librairie JavaScript.
Pour les petits scripts la
transition de Chime à Jmol devrait être
immédiate. Avec des application web Chime plus grosses,
plus compliquées vous risquez d'avoir des difficultés
car le mécanisme de bouton/événement est
différent.
Les scripts simples qui sont exécutés au chargement
de l'applet peuvent être exécutés en
utilisant le paramètre "script" dans votre définition
HTML de votre applet. Ces scripts s'exécuteront sur les
plateformes de navigateurs qui ne supportent pas JavaScript ou
l'interface LiveConnect entre JavaScript et les applets Java.
Pour développer des applications web plus flexibles en
utilisant l'applet Jmol, vous écrivez du code JavaScript
qui passe des chaînes de caractères en utilisant
la méthode "script" de l'applet.
Pour des exemples supplémentaires et de la documentation
sur le langage de script Jmol, se reporter à
page de documentation.
Eye Candy Sans JavaScript
Langage de Script Basique
Langage de Script Avancé
Cet exemple démontre comment le langage de script peut
être utilisé sans JavaScript. Les navigateurs qui
ne supportent pas la communication LiveConnect entre JavaScript
et les applets Java fonctionneront quand même avec ce
type de script.
<applet name="flash" code="JmolApplet" archive="JmolApplet.jar"
codebase="../jmol"
width="300" height="100" align="left" mayscript="true">
<param name="bgcolor" value="teal">
<param name="progressbar" value="true">
<param name="script" value="
load jmol.mol;
set perspectiveModel 10;
set zoomLarge off;
select all; cpk off; wireframe 10; color yellow;
move 0 0 0 400 0 0 0 0 2;
cpk 10; wireframe 5; delay 0.1;
cpk 30; wireframe 15; delay 0.1;
cpk 50; wireframe 30; delay 0.1;
cpk 70; wireframe 50; delay 0.1;
select atomno=1, atomno=9; color blue; delay 0.1;
select atomno=2, atomno=10; color red; delay 0.1;
select atomno=3, atomno=11; color green; delay 0.1;
select atomno=4, atomno=12; color orange; delay 0.1;
select atomno=5, atomno=13; color pink; delay 0.1;
select atomno=6, atomno=14; color brown; delay 0.1;
select atomno=7, atomno=15; color purple; delay 0.1;
select atomno=8, atomno=16; color cyan; delay 0.1;
move 0 0 0 -400 0 0 0 0 1;
move 0 0 360 50 0 0 0 0 1;
move 0 360 0 350 0 0 0 0 1;
loop 5;
">
</applet>
|
Cet exemple montre une partie du langage de script disponible.
<applet name="jmol" code="JmolApplet" archive="JmolApplet.jar"
codebase="../jmol"
width="200" height="200" mayscript="true">
<param name="progressbar" value="true"/>
<param name="load" value="caffeine.xyz"/>
</applet>
<br/>
<a href="javascript:document.jmol.script('wireframe on; spacefill off;');">
wireframe</a>
<a href="javascript:document.jmol.script('wireframe off; spacefill on;');">
spacefill</a>
<a href="javascript:document.jmol.script('wireframe 0.2; spacefill 25%;');">
ball & stick</a>
<br/>
<a href="javascript:document.jmol.script('load aspirina.mol');">
aspirina.mol</a>
<a href="javascript:document.jmol.script('load bulk_si.in');">
bulk_si.in</a>
<a href="javascript:document.jmol.script('load caffeine.xyz');">
caffeine.xyz</a>
<a href="javascript:document.jmol.script('load dna.xyz');">
dna.xyz</a>
<a href="javascript:document.jmol.script('load estron.cml');">
estron.cml</a>
<br/>
<a href="javascript:document.jmol.script('color background blue ; move 90 180 -45 0 0 0 0 0 5;
center 1 ; move 0 0 360 100 0 0 0 0 2 ; delay 2 ; reset; color background white')">move</a>
<a href="javascript:document.jmol.script('script move.txt');">
move off of server</a>
<a href="javascript:document.jmol.script('load aspirina.mol')">
load aspirina via script</a>
<a href="javascript:document.jmol.script('script testscript.txt')">
run test script off of server</a>
<br/>
<a href="javascript:document.jmol.script('set perspectiveDepth on')">
perspectiveDepth</a>
<a href="javascript:document.jmol.script('set perspectiveDepth off')">
no perspectiveDepth</a>
<br/>
<a href="javascript:document.jmol.script('color background black')">
black background</a>
<a href="javascript:document.jmol.script('color background grey')">
grey background</a>
<a href="javascript:document.jmol.script('color background [222,222,222]')">
background [222,222,222]</a>
<a href="javascript:document.jmol.script('color background white')">
white background</a>
wireframe
spacefill
ball & stick
aspirina.mol
bulk_si.in
caffeine.xyz
dna.xyz
estron.cml
move
move off of server
load aspirina via script
run test script off of server
perspectiveDepth
no perspectiveDepth
black background
grey background
background [222,222,222]
white background
Plus sophistiqué et plus facile de coder les méthodes d'interaction
sont basés sur JavaScript et fourni par la bibliothèque Jmol.js
|