From: <ha...@us...> - 2006-08-16 00:59:03
|
Revision: 5378 Author: hansonr Date: 2006-08-15 17:58:21 -0700 (Tue, 15 Aug 2006) ViewCVS: http://svn.sourceforge.net/jmol/?rev=5378&view=rev Log Message: ----------- bob200603 10.x.44 / 11.0 beta -- dynamic callback function definition -- dynamic draw curve, curved arrow, point, line, plane definition -- fixes menu bug not updating display after checkbox changes -- show DRAW -- set picking DRAW -- set AnimFrameCallback -- set HoverCallback -- set LoadStructCallback -- set MessageCallback -- set PickCallback -- draw COLOR option -- show $objectID -- TransformManager.unTranslatePoint() method -- Shape.checkObjectDragged() along with checkObjectClicked() -- new StatusListener.setCallbackFunction() interface -- documentation update That's it for 11.0? http://www.stolaf.edu/people/hansonr/jmol/test/proto/new.htm http://www.stolaf.edu/people/hansonr/jmol/test/proto/draw.htm Modified Paths: -------------- branches/bob200603/Jmol/script_documentation/JmolAppletProto.jar branches/bob200603/Jmol/script_documentation/cmds.js branches/bob200603/Jmol/script_documentation/code.js branches/bob200603/Jmol/script_documentation/scripts.xls branches/bob200603/Jmol/src/org/jmol/api/JmolStatusListener.java branches/bob200603/Jmol/src/org/jmol/applet/Jmol.java branches/bob200603/Jmol/src/org/jmol/viewer/Compiler.java branches/bob200603/Jmol/src/org/jmol/viewer/Draw.java branches/bob200603/Jmol/src/org/jmol/viewer/DrawRenderer.java branches/bob200603/Jmol/src/org/jmol/viewer/Eval.java branches/bob200603/Jmol/src/org/jmol/viewer/JmolConstants.java branches/bob200603/Jmol/src/org/jmol/viewer/Mesh.java branches/bob200603/Jmol/src/org/jmol/viewer/MeshCollection.java branches/bob200603/Jmol/src/org/jmol/viewer/MeshRenderer.java branches/bob200603/Jmol/src/org/jmol/viewer/ModelManager.java branches/bob200603/Jmol/src/org/jmol/viewer/MouseManager.java branches/bob200603/Jmol/src/org/jmol/viewer/PickingManager.java branches/bob200603/Jmol/src/org/jmol/viewer/ScriptManager.java branches/bob200603/Jmol/src/org/jmol/viewer/Shape.java branches/bob200603/Jmol/src/org/jmol/viewer/StatusManager.java branches/bob200603/Jmol/src/org/jmol/viewer/Token.java branches/bob200603/Jmol/src/org/jmol/viewer/TransformManager.java branches/bob200603/Jmol/src/org/jmol/viewer/Viewer.java branches/bob200603/Jmol/src/org/openscience/jmol/app/Jmol.java Modified: branches/bob200603/Jmol/script_documentation/JmolAppletProto.jar =================================================================== (Binary files differ) Modified: branches/bob200603/Jmol/script_documentation/cmds.js =================================================================== --- branches/bob200603/Jmol/script_documentation/cmds.js 2006-08-15 03:56:05 UTC (rev 5377) +++ branches/bob200603/Jmol/script_documentation/cmds.js 2006-08-16 00:58:21 UTC (rev 5378) @@ -1,7 +1,7 @@ //newCmd('command','examples','flags/xrefs','description','sortorder','param1','param2','param3','param4+') -lastupdate='Aug 14, 2006' -jmolversion='Jmol Version 11.0(beta) 2006/07/18' -newCmd('.animation','','*v+11.0 -- adds greatly expanded frame animation control,*v-10.2,anim','Sets selected animation parameters or turns animation on or off. Note that there are four distinct animation types that can be employed using Jmol: (1) files may contain '+'multiple stuctures that are "played" sequencially, (2) Files of various types may contain vibrational modes that can be animated, '+'(3) scripts may be run through with delays and loops, and (4) the model may spin or move in a predefined way. The "animation" command only refers to method (1). ','1|2|4','','') +lastupdate='Aug 15, 2006' +jmolversion='Jmol Version 11.0(beta) 2006/08/15' +newCmd('.animation','','*v+11.0 -- adds greatly expanded frame animation control; *v-10.2,anim','Sets selected animation parameters or turns animation on or off. Note that there are four distinct animation types that can be employed using Jmol: (1) files may contain '+'multiple stuctures that are "played" sequencially, *various types may contain vibrational modes that can be animated, *ve in a predefined way. The "animation" command only refers to method (1). ','1|2|4','','') newCmd('','','*v-10.2,','Turns on or off animation.','*10','._on_off{"ON"}','') newCmd('','','*v-10.2,','Sets the animation direction to be from last frame to first frame.','*20','.direction','-1') newCmd('','','*v-10.2,','Sets the animation direction to be first frame to last frame.','*30','','+1') @@ -15,7 +15,7 @@ newCmd('','','*v-10.2,','Sets the animation to play once through and then stop (the default mode).','*92','','ONCE') newCmd('','','*v-10.2,','Sets the animation to play forward and back endlessly.','*93','','PALINDROME') newCmd('','','*v-10.2,','Allows for a time delay at the start and end of the palindrome.','*94','','PALINDROME','._time_delay1','._time_delay2') -newCmd('.animation','','*v-11.0,anim','Sets selected animation parameters or turns animation on or off. Note that there are four distinct animation types that can be employed using Jmol: (1) files may contain '+'multiple stuctures that are "played" sequencially, (2) Gaussian output files may contain vibrational modes that can be animated, '+'(3) scripts may be run through with delays and loops, and (4) the model may spin or move in a predefined way. The "animation" command only refers to method (1). ','1|2|4','','') +newCmd('.animation','','*v-11.0,anim','Sets selected animation parameters or turns animation on or off. Note that there are four distinct animation types that can be employed using Jmol: (1) files may contain '+'multiple stuctures that are "played" sequencially, *vibrational modes that can be animated, *ve in a predefined way. The "animation" command only refers to method (1). ','1|2|4','','') newCmd('','','*v-11.0,','Turns on or off animation.','*10','._on_off{"ON"}','') newCmd('','','*v-11.0,','Sets the animation direction to be from last frame to first frame.','*20','.direction','-1') newCmd('','','*v-11.0,','Sets the animation direction to be first frame to last frame.','*30','','+1') @@ -29,9 +29,9 @@ newCmd('','','*v-11.0,','Sets the animation to play once through and then stop (the default mode).','*92','','ONCE') newCmd('','','*v-11.0,','Sets the animation to play forward and back endlessly.','*93','','PALINDROME') newCmd('','','*v-11.0,','Allows for a time delay at the start and end of the palindrome.','*94','','PALINDROME','._time_delay1','._time_delay2') -newCmd('.atom expressions','','*v+10.2 includes connected(),*v-11.0,','An increasing number of commands, including {#.select~}, {#.restrict~}, {#.define~}, {#.center~}, {#.connect~}, and {#.polyhedra~} take for parameters one or more expressions that represent collections of atoms in one or more models. While this documentation does not attempt to define these expressions completely, several examples are given here. Note that the <b>substructure()</b> function takes a quoted {http://www.daylight.com/smiles~smiles string} for its argument. <b>within()</b> takes two parameters. The second parameter specifies the atom set within which the selection should be restricted. The first parameter can be a decimal distance in Angstroms or one of the words <b>GROUP</b>, <b>CHAIN</b>, or <b>MODEL</b>. <b>connected([optional min # bonds], [optional max # bonds], [optional atom expression])</b> See <a href=examples/groups.txt>examples/groups.txt</a> for many examples of using connected() with <b>define</b>.','0','','') -newCmd('.atom expressions','','*v+11.0 adds cell, element, molecule, and site keywords; adds within(ELEMENT,(atom expression)), within(MOLECULE,(atom expression)), within(SITE,(atom expression)), and within("[SEQUENCE]",(atom expession)),*v-10.2,','An increasing number of commands, including {#.center~}, {#.connect~}, {#.define~}, {#.dipole~}, {#.draw~}, {#.isosurface~}, {#.measure~}, {#.polyhedra~}, {#.restrict~}, and {#.select~} take for parameters one or more expressions that represent collections of atoms in one or more models. While this documentation does not attempt to define these expressions completely, several examples are given here. The comparison operators <, =, >, and != operate with the keywords ATOMNO (sequential 1 - # of atoms), ELEMNO (atomic number of the element), MODEL, MOLECULE, OCCUPANCY (decimal number = PDB file columns 55-60; integer = this times 100), POLYMERLENGTH (number of residues), RADIUS (currently DISPLAYED radius; decimal number = Angstroms; integer = this times 250), RESNO (residue number), TEMPERATURE (decimal number = PDB file columns 61-66; integer = this times 100). In addition, the special crystallographic keyword CELL allows indicating a specific unit cell (using <b>cell =</b>) either in lattice integer notation (000-999) or as a coordinate in ijk space {{1 1 1}}. Anding two cells, for example <b>cell=555 and cell=556</b> selects the atoms on the common face. Note that the <b>substructure()</b> function takes a quoted {http://www.daylight.com/smiles~smiles string} for its argument. <b>within()</b> takes two parameters. The second parameter specifies the atom set within which the selection should be restricted. The first parameter can be a decimal distance in Angstroms or one of the words <b>GROUP</b>, <b>CHAIN</b>, <b>ELEMENT</b>, <b>MODEL</b>, <b>MOLECULE</b>, or <b>SITE</b>, or it can be a string of one-character peptide or nuceic acid sequence codes such as "GGCCCTT" or "MAACYXV" within quotation mark. (SITE refers to all crystallographic sites common to the specified atom set.) <b>connected([optional min # bonds], [optional max # bonds], [optional atom expression])</b> allows for selection of specific atoms based on their connectivity to other atoms. See <a href=groups.scr>groups.scr</a> for many examples of using connected() with <b>define</b>.','0','','') -newCmd('.axes','','*v+11.0 -- new,*v-10.2,set','Turns on or off displayed axes, and determines their line style and line width (as a decimal number, in Angstroms).','0|1','','') +newCmd('.atom expressions','','*v+10.2 includes connected(); *v-11.0,','An increasing number of commands, *veral examples are given here. Note that the <b>substructure()</b> function takes a quoted {http://www.daylight.com/smiles~smiles string} for its argument. <b>within()</b> takes two parameters. The second parameter specifies the atom set within which the selection should be restricted. The first parameter can be a decimal distance in Angstroms or one of the words <b>GROUP</b>, <b>CHAIN</b>, or <b>MODEL</b>. <b>connected([optional min # bonds], [optional max # bonds], [optional atom expression])</b> See <a href=examples/groups.txt>examples/groups.txt</a> for many examples of using connected() with <b>define</b>.','0','','') +newCmd('.atom expressions','','*v+11.0 adds cell; *v-10.2,','An increasing number of commands, including {#.center~}, {#.connect~}, {#.define~}, {#.dipole~}, {#.draw~}, {#.isosurface~}, {#.measure~}, {#.polyhedra~}, {#.restrict~}, and {#.select~} take for parameters one or more expressions that represent collections of atoms in one or more models. While this documentation does not attempt to define these expressions completely, several examples are given here. The comparison operators <, =, >, and != operate with the keywords ATOMNO (sequential 1 - # of atoms), ELEMNO (atomic number of the element), MODEL, MOLECULE, OCCUPANCY (decimal number = PDB file columns 55-60; integer = this times 100), POLYMERLENGTH (number of residues), RADIUS (currently DISPLAYED radius; decimal number = Angstroms; integer = this times 250), RESNO (residue number), TEMPERATURE (decimal number = PDB file columns 61-66; integer = this times 100). In addition, the special crystallographic keyword CELL allows indicating a specific unit cell (using <b>cell =</b>) either in lattice integer notation (000-999) or as a coordinate in ijk space {{1 1 1}}. Anding two cells, for example <b>cell=555 and cell=556</b> selects the atoms on the common face. Note that the <b>substructure()</b> function takes a quoted {http://www.daylight.com/smiles~smiles string} for its argument. <b>within()</b> takes two parameters. The second parameter specifies the atom set within which the selection should be restricted. The first parameter can be a decimal distance in Angstroms or one of the words <b>GROUP</b>, <b>CHAIN</b>, <b>ELEMENT</b>, <b>MODEL</b>, <b>MOLECULE</b>, or <b>SITE</b>, or it can be a string of one-character peptide or nuceic acid sequence codes such as "GGCCCTT" or "MAACYXV" within quotation mark. (SITE refers to all crystallographic sites common to the specified atom set.) <b>connected([optional min # bonds], [optional max # bonds], [optional atom expression])</b> allows for selection of specific atoms based on their connectivity to other atoms. See <a href=groups.scr>groups.scr</a> for many examples of using connected() with <b>define</b>.','0','','') +newCmd('.axes','','*v+11.0 -- new; *v-10.2,set','Turns on or off displayed axes, and determines their line style and line width (as a decimal number, in Angstroms).','0|1','','') newCmd('','','*v-10.2,','','1','._axes_type','') newCmd('.backbone','~structure','disp','Shows the backbone of a protein or nucleic acid macromolecule by connecting the alpha carbons. The selection of backbone units to display depends upon the currently selected atoms and the {#.set (bond styles)~bondmode} setting.','0|1','','') newCmd('','','','Turns the backbone on or off','*1','._on_off{"ON"}','') @@ -40,7 +40,7 @@ newCmd('','','','Sets the background of the applet window.','*1','._colorRGB','') newCmd('','','','Sets the background of the atom labels that appear with the "label" command. "NONE" results in there being no label background. Operates globally, not on selected atoms.','*3','LABELS','._color_or_none') newCmd('','','','Sets the background for the pop-up label box that appear when the mouse "hovers" over an atom. "NONE" results in there being no hover backgrounds. Operates globally, not on selected atoms.','*2','HOVER','._color_or_none') -newCmd('.boundbox','','*v+11.0 -- new,*v-10.2,set','Turns on or off a wire-frame box that contains the model, and determines the line style and line width (as a decimal number, in Angstroms) of that box.','0|1','','') +newCmd('.boundbox','','*v+11.0 -- new; *v-10.2,set','Turns on or off a wire-frame box that contains the model, and determines the line style and line width (as a decimal number, in Angstroms) of that box.','0|1','','') newCmd('','','*v-10.2,','','1','._axes_type','') newCmd('.cartoon','structure','disp','Cartoons are the classic shapes the are used to depict alpha helices and beta-pleated sheets. A combination of cartoons and {#.rockets~} can be displayed using cartoons along with {#.set (visibility)~set cartoonRockets}.','0|1','','') newCmd('','','','','*1','._on_off{"ON"}','') @@ -55,7 +55,7 @@ newCmd('','','','relative to the center of the boundbox, which is defined by the minimum and maximum atom center coordinates along each of the cartesian axes','2','BOUNDBOX','x y z {0.0 0.0 0.0}') newCmd('','','','relative to the average atom position (also known as the "unweighted center of gravity")','1','AVERAGE','x y z {0.0 0.0 0.0}') newCmd('.color','','*v+10.2 -- adds translucent/opaque,color,','In general, the color command takes the following syntax:<br /><br /><b>color [object] [translucent/opaque] [color or color scheme]</b>','1|2','','') -newCmd('','','','The color command takes several forms, depending upon the type of object being colored: an atom object, a bond object, a chemical element, or a model object. This section of the guide discusses each of these in turn:<br /><ul><li>{#.color%20(atom%20object)~}</li><li>{#.color%20(bond%20object)~}</li><li>{#.color%20(element)~}</li><li>{#.color%20(model%20object)~}</li></ul> Additional information external to this documentation can be found in relation to <a rel="_blank" href="http://jmol.sourceforge.net/jscolors/">[Jmol color schemes]</a> and <a rel="_blank" href="http://jmol.sourceforge.net/jscolors/#JavaScript%20colors">[standard JavaScript color names and codes]</a>. In addition, a page is available that lays out the <a rel="_blank" href="color.htm">[Jmol color command matrix]</a>.','TEXT','[object]','') +newCmd('','','','The color command takes several forms, depending upon the type of object being colored: an atom object, a bond object, a chemical element, or a model object. This section of the guide discusses each of these in turn:<br /><ul><li>{#.color%20(atom%20object)~}</li><li>{#.color%20(bond%20object)~}</li><li>{#.color%20(element)~}</li><li>{#.color%20(model%20object)~}</li><li>{#.color%20(named%20object)~}</li></ul> Additional information external to this documentation can be found in relation to <a rel="_blank" href="http://jmol.sourceforge.net/jscolors/">[Jmol color schemes]</a> and <a rel="_blank" href="http://jmol.sourceforge.net/jscolors/#JavaScript%20colors">[standard JavaScript color names and codes]</a>. In addition, a page is available that lays out the <a rel="_blank" href="color.htm">[Jmol color command matrix]</a>.','TEXT','[object]','') newCmd('','','','The color command allows an optional color modifier of TRANSLUCENT or OPAQUE, which can be used with any object, either alone or with a color. For example:<br /><br /> color atoms TRANSLUCENT orange<br /> color ribbons TRANSLUCENT [255, 165, 0]<br />select oxygen; color TRANSLUCENT<br /><br />If this option is not indicated, OPAQUE is assumed. Thus, <b>color atoms red</b> and <b>color atoms OPAQUE red</b> are synonymous. ','TEXT','[translucent/opaque]','') newCmd('','','','Colors can be designated as one of the <a rel="_blank" href="http://jmol.sourceforge.net/jscolors/#JavaScript%20colors">[standard JavaScript colors]</a>, as a red-green-blue triplet in square brackets, [255, 0, 255], as a red-green-blue triplet expressed as a six-digit hexidecimal number in brackets, [xFF00FF], or as the name of one of the known <a rel="_blank" href="http://jmol.sourceforge.net/jscolors/">[Jmol color schemes]</a>. If TEMPERATURE is used, then the color range will depend upon the setting of the {#.set rangeSelected~rangeSelected} flag. ','TEXT','[color or color scheme]','') newCmd('','','','Many objects inherit both color and opacity from the underlying associated atom (which, themselves "inherit" their color by default from their associated chemical element). For example, by default a bond will inherit the two colors+translucencies of its endpoint atoms. If you simply \'color atoms translucent\', then both the atoms and the bonds will be translucent. But if you \'color bonds opaque\' or \'color bonds red\' and also \'color atoms translucent\' only the atoms will be translucent. <br /><br />The level of \'translucent\' cannot be controlled; it is set at 50%. Note that the implementation of \'translucent\' is not as an alpha channel. Rather, translucent objects are "screened" so that every other pixel is painted. If you put an opaque object behind a translucent object, then you will see the object in the back.But if you put a translucent object behind another translucent object, then you will not see the translucent object in the back.','TEXT','Color Inheritance','') @@ -70,10 +70,10 @@ newCmd('.color (element)','','*v+10.2 -- new,color','You can use the \'color\' command to specify customized default colors that are used for elements. <a rel="_blank" href="http://jmol.sourceforge.net/jscolors/#Atoms%20(\'CPK%20colors\')">[default Jmol element colors]</a> <br /><br /><b>color carbon limegreen<br />color hydrogen [x32CD32];</b><br /><br />These changes are not molecule-specific; they will continue in effect even if new molecules are loaded. However, in a page with multiple applets, each applet will have its own set of element colors.<br /><br />If you choose to use this feature, you should consider encapsulating your favorite colors into a script and then executing that script as a subroutine. For example:<br /><br /><b>script LoadMyFavoriteColors.txt;<br />load foo.xyz;<br />load bar.xyz;</b><br /><br />Note:<br /><ol><li>Custom element colors are independent of and are not affected by the currently selected set of atoms.</li><li>To reset custom element colors, use {#.set%20(default%20color%20scheme)~\'set defaultColors Jmol\'} or \'set defaultColors Rasmol\'.</li><li>\'translucent\' or \'opaque\' cannot be specified as part of the element color specification. (You cannot \'color carbon transparent green\', for instance.)</li><li>At this time only elements can be custom colored. There is no support for customizing other color palettes such as those used for protein chains or groups.</li></ol>','2','._element_name','._colorRGB') newCmd('.color measures','colortext','*v+10.2 -- adds selective measurement coloring,color','Colors the measurement numbers and dotted lines. In Jmol 10.2, "color measures" change all measurement colors at once. In version 11.0, "color measures" acts on all future measures, allowing for selective coloring of measurements. Thus, "color measure" in 11.0 acts on (a) any measures currently with no color assigned and (b) on any future measures. If measurement colors have already been set, then "color measures NONE" needs to be invoked to turn off measurement colors prior to resetting them.','2','MEASURES','._colorRGB') newCmd('.color (model object)','colortext','color','Sets the color of various objects (axes, boundbox, echo, hover, measurements, pmesh, polyhedra, and unitcell).','2','._model_object','._colorRGB') -newCmd('.color (named object)','','*v+11.0 -- new,*v-10.2,','Sets the color of an object created using {#.draw~}, {#.isosurface~}, {#.pmesh~} or {#.polyhedra~} using the name identifier preceded by a dollar sign ($). ','2','._draw_object','._colorRGB') +newCmd('.color (named object)','','*v+11.0 -- new; *v-10.2,','Sets the color of an object created using {#.draw~}, {#.isosurface~}, {#.pmesh~} or {#.polyhedra~} using the name identifier preceded by a dollar sign ($). ','2','._draw_object','._colorRGB') newCmd('.comment (#)','comment','','Comments in Jmol are preceded by a number sign, \'#\'.[||`valign="top"><b>#</b>| Anything following \'#\' up until the end of a statement is ignored by Jmol with the following two exceptions. (A statement is terminated by a semicolon ";" or a newline.)||`valign="top"><b>#jx</b>|Commands prefixed with #jx <b>will be executed by Jmol</b>||`valign="top"><b>#jc</b>| If the string \'#jc\' appears <b>anywhere</b> within a statement, then that <b>entire statement</b> will be assumed to be a comment and will be completely ignored by the Jmol interpreter.||]CHIME NOTE: Similar comment controls exist in Chime. Commands prefixed with #! will be executed in Chime but not in RasMol. Commands containing ## will be ignored by Chime, but the portion preceding the ## will be executed in RasMol. Thus we have: [||# | not read by Jmol, Chime, or Rasmol||#jx [commands here] | Jmol excecution only||#! [commands here] | Chime execution only||[commands here] ## #jc |Rasmol execution only||[commands here] #jc | Chime and Rasmol only || [commands here] ## | Jmol and Rasmol only||]','0','','') -newCmd('.connect','','*v+10.2 -- NEW,*v-11.0,bond','The <b>connect</b> command allows real-time bond manipulation, allowing the user or application to connect and disconnect specific atom sets. The general syntax is as follows: <br /> <br /><b>connect [minimum and maximum distances] [source and target atom sets] [bond type] [modify/create option] </b> <br /> <br />(<b>connect</b> by itself deletes all bonds and then creates bonds based on Jmol default bond-generating algorithms, all as single bonds, without respect to what bonding patterns might have been indicated in the model file.)','0|2','','') -newCmd('.connect','','*v+11.0 expanded capabilities, *v-10.2,bond','The <b>connect</b> command allows real-time bond manipulation, allowing the user or application to connect and disconnect specific atom sets. The general syntax is as follows: <br /> <br /><b>connect [minimum and maximum distances] [source and target atom sets] [bond type] [modify/create option] </b> <br /> <br />(<b>connect</b> by itself deletes all bonds and then creates bonds based on Jmol default bond-generating algorithms, all as single bonds, without respect to what bonding patterns might have been indicated in the model file.)','0|2','','') +newCmd('.connect','','*v+10.2 -- NEW; *v-11.0,bond','The <b>connect</b> command allows real-time bond manipulation, allowing the user or application to connect and disconnect specific atom sets. The general syntax is as follows: <br /> <br /><b>connect [minimum and maximum distances] [source and target atom sets] [bond type] [modify/create option] </b> <br /> <br />(<b>connect</b> by itself deletes all bonds and then creates bonds based on Jmol default bond-generating algorithms, all as single bonds, without respect to what bonding patterns might have been indicated in the model file.)','0|2','','') +newCmd('.connect','','*v+11.0 expanded capabilities; *v-10.2,bond','The <b>connect</b> command allows real-time bond manipulation, allowing the user or application to connect and disconnect specific atom sets. The general syntax is as follows: <br /> <br /><b>connect [minimum and maximum distances] [source and target atom sets] [bond type] [modify/create option] </b> <br /> <br />(<b>connect</b> by itself deletes all bonds and then creates bonds based on Jmol default bond-generating algorithms, all as single bonds, without respect to what bonding patterns might have been indicated in the model file.)','0|2','','') newCmd('','','','Distances are given in Angstroms, either as decimals or integers. If only one distance parameter is given, it represents a maximum distance. If neither the minimum nor the maximum distance parameter is given, all connections between the two atom sets are made, regardless of distance. ','TEXT','[minimum and maximum distances]','') newCmd('','','The <b>connect</b> command allows real-time bond manipulation, allowing the user or application to connect and disconnect specific atom sets. The general syntax is as follows: <br /> <br />connect [minDistance] [maxDistance] [source atom set] [target atom set] [bond type] [modify/create option] <br /> <br />Distances are given in Angstroms. If only one distance parameter is given, it represents a maximum distance. If neither the minimum nor the maximum distance parameter is given, all connections between the two atom sets are made, regardless of distance. The source and target atom sets are embedded {#.atom expressions~atom expressions} and therefor must be enclosed in parentheses. If the source atom set is not given, it is taken to be the currently selected atom set. If neither atom set is given, it is taken to be <br /><br />Newly created connections are automatically assigned single bond order unless one of the following optional bond types is also specified: DOUBLE, TRIPLE, AROMATIC, PARTIAL, PARTIALDOUBLE, or HBOND. <br /><br />Four additional options relate to what connections are made. These include: <ul><li><b>CreateOrModify (default)</b> If the connection fits the parameters, it will be made. Bonds already present between these atoms will be replaced.</li><li><b>Create</b> Only new bonds will be created. If a bond of any type already exists between two atoms, it will not be affected.</li><li><b>Modify</b> Only pre-existing bonds will be modified. No new bonds will be created. </li><li><b>Delete</b> Delete the specified connections.</ul>','The source and target atom sets are embedded {#.atom expressions~atom expressions} and therefore must be enclosed in parentheses. If the source atom set is not given, it is taken to be the currently selected atom set, "(selected)". If neither atom set is given, "(selected) (selected)" is assumed.','TEXT','[source and target atom sets]','') newCmd('','','hbond','Unless otherwise specified, connections are automatically introduced as single bonds. Any one of the following bond types may be specified: SINGLE, DOUBLE, TRIPLE, AROMATIC, PARTIAL, PARTIALDOUBLE, or HBOND. (In appearance, AROMATIC and PARTIALDOUBLE are identical. PARTIAL and HBOND are both dashed, but they have different patterns, and newly created hydrogen bonds are only thin lines.)','TEXT','[bond type]','') @@ -84,7 +84,7 @@ newCmd('.delay','','anim','Causes the screen to refresh and the script to stop executing for the specified number of seconds. ','1','.on','') newCmd('','','','','1','._time_delay','') newCmd('.depth','','slabdepth',' Slab and Depth together control the percentage of the molecule to be displayed based on clipping planes. <b>slab on</b> turns slab/depth on. <b>slab 50</b> shows the back 50% of the molecule. <b>slab 25</b> show the back 25% of the molecule. Atoms appear solid; bonds appear hollow. CHIME NOTE: The slab/depth effect is equivalent to the RasMol command \'set slabmode solid\', however \'set slabmode [option]\' is not supported.','1','._percent_slab','') -newCmd('.dipole','','*v+11.0 -- NEW,*v-10.2,','The <b>dipole</b> command allows for the drawing of a bond or molecular dipole arrow with or without a cross near the tail. Note that without the cross, since it can be drawn from any point in molecular space to any other, a "dipole" can be used by a web page developer for a simple arrow in order point to some particular aspect of the model having nothing to do whatsoever with dipole moments.The values of each dipole can be set by the user or will be esimated using charge data or molecular dipole information if available in the loaded model file. Only a very crude calculation is used to estimate at least the direction of all bond dipoles. The general syntax of the <b>dipole</b> command is as follows: <br /> <br /><b>dipole [objectID] [modifying parameters] [positions] </b> <br /> <br />','0|1','','') +newCmd('.dipole','','*v+11.0 -- NEW; *v-10.2,','The <b>dipole</b> command allows for the drawing of a bond or molecular dipole arrow with or without a cross near the tail. Note that without the cross, since it can be drawn from any point in molecular space to any other, a "dipole" can be used by a web page developer for a simple arrow in order point to some particular aspect of the model having nothing to do whatsoever with dipole moments.The values of each dipole can be set by the user or will be esimated using charge data or molecular dipole information if available in the loaded model file. Only a very crude calculation is used to estimate at least the direction of all bond dipoles. The general syntax of the <b>dipole</b> command is as follows: <br /> <br /><b>dipole [objectID] [modifying parameters] [positions] </b> <br /> <br />','0|1','','') newCmd('','','','The optional identifier such as "bond1" that can be referred to in later scripts as $bond1. These words are arbitrary but should not be any Jmol command or any word that might be construed by Jmol as a command token, such as "x", "y", "to", etc. As a rule, simply include a number with the name. The special identifier <b>BONDS</b> refers to the entire collection of bond dipoles -- those dipoled defined specifically as between two atoms. Similarly, the special identifier <b>MOLECULAR</b> is primarily for files for which molecular dipole information is available. The value and placement of this dipole can also be set using the <b>dipole</b> command.','TEXT','[object id]','') newCmd('','','','The dipole is defined using a small set of parameters. These include:<br />[||<b>CROSS</b><br /><b>NOCROSS</b>| include (default) or do not include a 3D cross near the tail of the arrow. ||<b>DELETE</b>|Deletes the specified dipole if an identifier is given or all dipoles if no identifier is given; not used with any other parameters.||<b>WIDTH x.xx</b>|The width of the dipole in Angstroms. The default value is 0.005 Angstroms.||<b>ON/OFF</b>|Turns on or off the specified dipole or all drawn objects if no identifier is given; not used with any other parameters.||<b>OFFSET x.xx</b><br /><b>OFFSET n</b> | Dipoles are by default centered between the two endpoints. The OFFSET value sets the offset of the dipole from this position along the axis of its endpoints. In Angstroms if a decimal number is given; in percent of the distance between the two endpoints if an integer is used. ||<b>OFFSETSIDE x.xx</b>|The offset of the dipole in Angstroms perpendicular to the axis of its endpoints. The default value is 0.4 Angstroms.||<b>VALUE x.xxx</b> | A decimal number indicates the value of the dipole. Overall scaling is accomplished either by setting this number or using {#.set (misc)~set dipoleScale}. The VALUE keyword is optional.||]','TEXT','[modifying parameters]','') newCmd('','','','The positions of the endpoints of the dipole are set either using embedded atom expressions in parentheses, such as (atomno=1), or using a specific point in molecular space, {{x y z}}, either as a cartesian coordinate or a {#.fractional coordinates~fractional unit cell coordinate}. If two atoms are designated, then the dipole becomes a member of the "bonds" dipole collection and can be colored with that group. If a set of atoms is indicated, the geometric center is used. Thus, (*) indicates the geometric center of the molecule.','TEXT','[positions]','') @@ -103,19 +103,19 @@ newCmd('','','*v-10.2,','Draws dots at the indicated radius in Angstroms for each atom (maximum value 10.0 Angstroms).','*5','(decimal)','') newCmd('','','','Draws dots at the indicated distance in Angstroms beyond the van der Waals radius for each atom (maximum value 10.0 Angstroms). The "+" sign is required.','*6','+(decimal)','') -newCmd('.draw','','*v+11.0,*v-10.2,iso','The <b>draw</b> command allows for the insertion of points, lines, and planes to a model. The general syntax of the <b>draw</b> command is as follows: <br /> <br /><b>draw [objectID] [modifying parameters] [positions] </b> <br /> <br />','0|1','','') +newCmd('.draw','','*v+11.0; *v-10.2,iso','The <b>draw</b> command allows for the insertion of points, lines, and planes to a model. The general syntax of the <b>draw</b> command is as follows: <br /> <br /><b>draw [objectID] [modifying parameters] [positions] </b> <br /> <br />','0|1','','') newCmd('','','*v-10.2,','The optional identifier such as "line1" or "plane2" that can be referred to in later scripts as $line1 or $plane2. These words are arbitrary but should not be any Jmol command or any word that might be construed by Jmol as a command token, such as "x", "y", "to", etc. As a rule, simply include a number with the name. ','TEXT','[object id]','') -newCmd('','','*v-10.2,','Several options allow for a wide variety of simple structures to be drawn. These include:[||<b>CROSSED</b>|Two lines (already drawn objects) specified next are crossed; switch the order of vertices for defining a plane.||<b>DELETE</b>|Deletes the object if an identifier is given or all drawn objects if none is given; not used with any other parameters.||<b>FIXED/MODELBASED</b>|Sets whether the surface generated is to be associated with the fixed window -- and thus appear with all frames/models -- or is to be associated with the currently displayed model (the default).||<b>ON/OFF</b>|Turns on or off the identified object or all drawn objects if no identifier is given; not used with any other parameters.||<b>PERP</b> <br /><b>PERPENDICULAR</b>|Draw this object perpendicular to the next indicated object.||<b>PLANE</b>|Create a four-vertex quadrilateral even if only three points are given.||<b>REVERSE</b>|Reverse the order of vertices used if the next object listed is a line.||<b>ROTATE45</b>|Rotate a perpendicular plane to a line by 45 degrees.||<b>LENGTH (decimal)</b>|The length for a line/axis in Angstroms. The keyword LENGTH is optional.||<b>SCALE (decimal)<br />SCALE (integer)</b>|SCALE with a decimal value indicates a scaling factor for the drawn object. For example, <b>draw SCALE 1.5 (atomno=1) (atomno=2)</b> draws a line with length 1.5 times the distance from atom 1 to atom 2. The line is centered on the two atoms. The keyword SCALE is required in this case. Note that a draw command can consist of just an identifier and a scale. Thus, if $line1 is already defined, <b>draw line1 SCALE 1.3</b> will rescale that line to 130% of the distance between its defining points. SCALE with an integer number indicates a percent scale. The keyword SCALE is optional in this case.||<b>VERTICES</b> | Generally the geometric center of an atom expression or drawn object is used for positioning. Added just before the atom set or object name reference, VERTICES indicates to use all vertices, not just the center point of the atoms in the expression or the points in the object.||]','TEXT','[modifying parameters]','') +newCmd('','','*v-10.2,','Several options allow for a wide variety of simple structures to be drawn. These include:[||<b>ARROW</b>|Draws a straight (two-point) or curve (more than two-point) arrow||<b>COLOR (color)</b>|Sets the color of the drawn object at the time it is created. (The {#.color (model object)~color} command can be used retroactively as well.) ||<b>CROSSED</b>|Two lines (already drawn objects) specified next are crossed; switch the order of vertices for defining a plane.||<b>CURVE</b>|Draws a smooth curve through the given positions. ||<b>DELETE</b>|Deletes the object if an identifier is given or all drawn objects if none is given; not used with any other parameters.||<b>FIXED/MODELBASED</b>|Sets whether the surface generated is to be associated with the fixed window -- and thus appear with all frames/models -- or is to be associated with the currently displayed model (the default).||<b>ON/OFF</b>|Turns on or off the identified object or all drawn objects if no identifier is given; not used with any other parameters.||<b>PERP</b> <br /><b>PERPENDICULAR</b>|Draw this object perpendicular to the next indicated object.||<b>PLANE</b>|Create a four-vertex quadrilateral even if only three points are given.||<b>REVERSE</b>|Reverse the order of vertices used if the next object listed is a line.||<b>ROTATE45</b>|Rotate a perpendicular plane to a line by 45 degrees.||<b>LENGTH (decimal)</b>|The length for a line/axis in Angstroms. The keyword LENGTH is optional.||<b>OFFSET {{x y z}}</b>| offsets the object by the given x, y, and z distances.||<b>SCALE (decimal)<br />SCALE (integer)</b>|SCALE with a decimal value indicates a scaling factor for the drawn object. For example, <b>draw SCALE 1.5 (atomno=1) (atomno=2)</b> draws a line with length 1.5 times the distance from atom 1 to atom 2. The line is centered on the two atoms. The keyword SCALE is required in this case. Note that a draw command can consist of just an identifier and a scale. Thus, if $line1 is already defined, <b>draw line1 SCALE 1.3</b> will rescale that line to 130% of the distance between its defining points. SCALE with an integer number indicates a percent scale. The keyword SCALE is optional in this case.||<b>VERTICES</b> | Generally the geometric center of an atom expression or drawn object is used for positioning. Added just before the atom set or object name reference, VERTICES indicates to use all vertices, not just the center point of the atoms in the expression or the points in the object.||]','TEXT','[modifying parameters]','') newCmd('','','*v-10.2,','Positions define position of the point, the endpoints of the line/axis, or the corners of a plane. Positions can be indicated in any combination of any of the following four ways: <br />[||(atom expression)|an atom expression, in parentheses.||{{x, y, z}}|a model-frame cartesian coordinate, in braces, ||{{x, y, z/}}|for chrystal structures, a unit-cell {#.fractional coordinates~fractional coordinate}, in braces, ||$object|a previously defined drawing object such as $line1 or $plane2, precedd by "$". ||]','TEXT','[positions]','') -newCmd('.echo','','label','Echos a string of text to the window at the location predefined by the "set echo" command as well as to the Java Console. "echo" by itself deletes the text at the selected position (top, middle, or bottom).','1','(string)','') +newCmd('.echo','','label','Echos a string of text to the window at the location predefined by the "set echo" command as well as to the Java console, the Jmol {#.console~}, and the {#.set (callback)~MessageCallback} function, if defined (applet only). "echo" by itself deletes the text at the selected position (top, middle, or bottom).','1','(string)','') newCmd('.exit','','anim',' Stops execution of the script current script. In the case of a script that is running as a "child" (for example, from a "source" command, execution continues with the parent.','0','','') newCmd('.font','','label','Sets font size and information in labels and other text-bearing elements.','5','._object_with_text','._fontsize','._fontface{"SansSerif"}','._fontstyle{"Plain"}') -newCmd('.fractional coordinates','','*v+11.0 NEW,*v-10.2,','Several Jmol commands, namely {#.center~}, {#.centerAt~}, {#.dipole~}, {#.draw~}, {#.isosurface~}, {#.moveTo~}, {#.rotate~}, {#.spin~}, and , {#.unitcell~}, accept coordinates in place of atom expressions. These coordinates are introduced using braces: {{x, y, z}} or {{x y z}}. (The commas are optional.) However, when the file data are crystallographic, and the coordinates have been derived by transformation of unit cell coordinates into cartesian coordinates, one can use the unit cell fractional coordinate system instead. The designation of a coordinate as fractional is simplicity itself: just include somewhere in one of the three coordinate values a fraction symbol, "/". Thus, {{1/2, 0, 0}} is a fractional coordinate, and it will be automatically transformed into the correct cartesian point. This allows formation of commands such as <b>set unitCell {{1/2, 1/2, 1/2}}</b> to move the unit cell to a new crystallographic orgin (for display purposes only). Since n/1 is n, one can use decimals as well, writing {{0.5/1, 0, 0}} instead of {{1/2, 0, 0}}. And since "/1" is not particularly informative, the "1" can be left off to give {{0.5/, 0, 0}} or {{0.5, 0, 0/}} as sufficient indication of fractional coordinates.','0','','') +newCmd('.fractional coordinates','','*v+11.0 NEW; *v-10.2,','Several Jmol commands, namely {#.center~}, {#.centerAt~}, {#.dipole~}, {#.draw~}, {#.isosurface~}, {#.moveTo~}, {#.rotate~}, {#.spin~}, and , {#.unitcell~}, accept coordinates in place of atom expressions. These coordinates are introduced using braces: {{x, y, z}} or {{x y z}}. (The commas are optional.) However, when the file data are crystallographic, and the coordinates have been derived by transformation of unit cell coordinates into cartesian coordinates, one can use the unit cell fractional coordinate system instead. The designation of a coordinate as fractional is simplicity itself: just include somewhere in one of the three coordinate values a fraction symbol, "/". Thus, {{1/2, 0, 0}} is a fractional coordinate, and it will be automatically transformed into the correct cartesian point. This allows formation of commands such as <b>set unitCell {{1/2, 1/2, 1/2}}</b> to move the unit cell to a new crystallographic orgin (for display purposes only). Since n/1 is n, one can use decimals as well, writing {{0.5/1, 0, 0}} instead of {{1/2, 0, 0}}. And since "/1" is not particularly informative, the "1" can be left off to give {{0.5/, 0, 0}} or {{0.5, 0, 0/}} as sufficient indication of fractional coordinates.','0','','') -newCmd('.frame','models','*v+11.0 -- greatly expanded animation frame control,*v-10.2,anim','Sets the current animation frame. Numbers refer to the physical position of the model in the file (1 being the first). Same as the {#animation~animation frame} command. See also {#.model~}. Note that you can show specific pairs or sets of frames or models by using <b>frame all</b> followed by <b>restrict none</b> to turn off all display, and then a select of the specific frames of interest, such as <b>select */1,*/3; wireframe 0.05, spacefill 0.15</b>.','1|1','','') +newCmd('.frame','models','*v+11.0 -- greatly expanded animation frame control; *v-10.2,anim','Sets the current animation frame. Numbers refer to the physical position of the model in the file (1 being the first). Same as the {#animation~animation frame} command. See also {#.model~}. Note that you can show specific pairs or sets of frames or models by using <b>frame all</b> followed by <b>restrict none</b> to turn off all display, and then a select of the specific frames of interest, such as <b>select */1,*/3; wireframe 0.05, spacefill 0.15</b>. For the applet, if {#.set (callback)~AnimFrameCallback} is enabled, a message indicating the frame change is sent to the associated JavaScript function.','1|1','','') newCmd('','','*v-10.2,','Go to a specific frame.','10','(integer >= 1)','') newCmd('','','*v-10.2,','Overlay all frames.','20','ALL','') newCmd('','','*v-10.2,','Go to next frame','30','NEXT','') @@ -135,7 +135,7 @@ -newCmd('.frank','frank','*v+11.0,*v-10.2,','Determines whether or not "Jmol" is indicated in the bottom right corner of the window.','0|1','','') +newCmd('.frank','frank','*v+11.0; *v-10.2,','Determines whether or not "Jmol" is indicated in the bottom right corner of the window.','0|1','','') newCmd('','','*v-10.2,','','1','._on_off','') newCmd('.geoSurface','','*v+11.0 -- provides a quickly rendered crude geodesic molecular/solvent-accessible surface.,disp','Turns a crude geodesic molecular surface on or off around the currently selected atoms. If a decimal with an explicit "+" sign is given, or {#.set%20(visibility)~set solvent ON}) is in effect, the resultant surface is a crude solvent-accessible surface. This command has the same syntax as the {#.dots~} command. To color the surface, use {#.color (model object)~color geosurface}. For a smoother surface, use {#.isosurface~isosurface SASURFACE 1.2}.','*1','._on_off{"ON"}','') newCmd('','','','Draws a geodesic surface at the van der Waals radius for the selected atoms. See <a href=radii.xls>radii.xls</a>.','*2','VANDERWAALS','') @@ -143,7 +143,7 @@ newCmd('','','*v-10.2,','Draws a geodesic surface at the indicated percent of the van der Waals radius for each atom (maximum value 1000%).','*4','(integer)','') newCmd('','','*v-10.2,','Draws a geodesic surface at the indicated radius in Angstroms for each atom (maximum value 10.0 Angstroms).','*5','(decimal)','') newCmd('','','','Draws a geodesic surface at the indicated distance in Angstroms beyond the van der Waals radius for each atom (maximum value 10.0 Angstroms). The "+" sign is required. This surface approximates the solvent-accessible surface with the indicated solvent probe radius. Typically this number is +1.2 or +1.4. This command overrides the {#.set%20(visibility)~set solvent/set radius} method of defining the solvent-accessible surface.','*6','+(decimal)','') -newCmd('.getProperty','','*v+11.0 NEW,*v-10.2,','The <b>getProperty</b> command sends information to the message callback function defined for a Jmol applet using the jmolSetCallback(calbackName, funcName) function in Jmol-new.js. Either a simple text string in the case of a file property or a valid JSON (JavaScript Object Notation) string in the case of a molecular property is returned. Used with jmolScriptWait(), the <b>getProperty</b> script command provides a powerful way to interact with the Jmol applet. Even simpler, though, is to use one of the Jmol-new.js built-in JavaScript commands jmolGetPropertyAsString(), jmolGetPropertyAsJSON(), jmolGetPropertyAsJavaObject(), or (most useful, probably) jmolGetPropertyAsArray(). For example, <code><br /><br />var modelInfo = jmolGetPropertyAsArray("modelInfo")<br />alert(modelInfo.modelCount)<br />for (int i = 0; i < modelInfo.modelCount; i++)<br /> alert(modelInfo.models[i].name</code>','0|1','','') +newCmd('.getProperty','','*v+11.0 NEW; *v-10.2,','The <b>getProperty</b> command sends information to the message callback function defined for a Jmol applet using the jmolSetCallback("messageCallback", funcName) function in Jmol-new.js or via the {#.set (callback)~set} command. Either a simple text string in the case of a file property or a valid JSON (JavaScript Object Notation) string in the case of a molecular property is returned. Used with jmolScriptWait(), the <b>getProperty</b> script command provides a powerful way to interact with the Jmol applet. Even simpler, though, is to use one of the Jmol-new.js built-in JavaScript commands jmolGetPropertyAsString(), jmolGetPropertyAsJSON(), jmolGetPropertyAsJavaObject(), or (most useful, probably) jmolGetPropertyAsArray(). For example, <code><br /><br />var modelInfo = jmolGetPropertyAsArray("modelInfo")<br />alert(modelInfo.modelCount)<br />for (int i = 0; i < modelInfo.modelCount; i++)<br /> alert(modelInfo.models[i].name</code>','0|1','','') newCmd('','','*v-10.2,','JSON structure describing the current state of animation. See <a href=animationInfo.txt>animationInfo.txt</a>','1','animationInfo','') newCmd('','','*v-10.2,','JSON structure describing the applet, including, for example, the applet version, compile date, Java version, and name of the applet object. See <a href=appletInfo.txt>appletInfo.txt</a>','1','appletInfo','') newCmd('','','*v-10.2,','JSON structure describing the atoms in the model. A second (optional) parameter specifies a subset of the atoms. The default is (visible). Parentheses are required. See <a href=atomInfo.txt>atomInfo.txt</a>','1','atomInfo','(atom expression)','visible','') @@ -176,14 +176,14 @@ -newCmd('.hbonds','','*v+11.0 -- adds "hbond CALCULATE"; changes in behavior of "hbonds ON",bond,hbondc,hbond','Hydrogen bonds can be turned on or off, given custom widths in Angstroms, or colored (see {#.color(bond object)~color hbonds} and set ). In addition, the positions of a restricted set of protein and nucleic acid hydrogen bonds can be calculated. CHIME NOTE: In RasMol/Chime and versions of Jmol prior to 10.2, <b>hbonds ON</b> displays a limited set of calculated hydrogen bonds in proteins and nucleic acids. Starting with Jmol version 10.2, <b>hbonds ON</b> does not automatically calculate hydrogen bonds. Use <b>hbonds CALCULATE</b> instead.','0|1','','') +newCmd('.hbonds','','*v+11.0 -- adds "hbond CALCULATE", changes in behavior of "hbonds ON",bond,hbondc,hbond','Hydrogen bonds can be turned on or off, given custom widths in Angstroms, or colored (see {#.color(bond object)~color hbonds} and set ). In addition, the positions of a restricted set of protein and nucleic acid hydrogen bonds can be calculated. CHIME NOTE: In RasMol/Chime and versions of Jmol prior to 10.2, <b>hbonds ON</b> displays a limited set of calculated hydrogen bonds in proteins and nucleic acids. Starting with Jmol version 10.2, <b>hbonds ON</b> does not automatically calculate hydrogen bonds. Use <b>hbonds CALCULATE</b> instead.','0|1','','') newCmd('','','','','*1','._on_off{"ON"}','') newCmd('','','','','*2','._hbond_width_angstroms','') newCmd('','','','Calculates hydrogen bonds involving atoms currently selected and displays them. This calculation is currently limited to hydrogen bonds (a) between protein amide NH and protein amide carbonyl oxygens and (b) between nucleic acid base pairs. The "hydrogen bond" is created and displayed as though between nitrogen and oxygen or between nitrogen and nitrogen. Hydrogen atom positions are calculated but not saved or displayed, and the actual hydrogen atoms involved in the hydrogen bonds, if present, are ignored.','*4','CALCULATE','') -newCmd('.hover','','label','Turns on and off pop-up labels that appear when the user "hovers" the mouse over the atom. If a string is given, it is used as the label. See also {#.label~}.','1','._on_off_string','') -newCmd('.isosurface','','*v+11.0 -- greatly expanded to include orbitals, solvent-accessible surfaces, user-defined f(x,y), and contoured color mapping,*v-10.2,iso','<img style="clear:right" src="isosurface.gif" alt="" />Jmol can generate a large variety of objects using the method of isosurfaces. Many of these surfaces can be color-mapped. The general syntax of the <b>isosurface</b> command is as follows: <br /> <br /><b>isosurface [object id] [construction/mapping parameters] [surface object] [additional mapping-only parameters] MAP [color mapping dataset] [display options] </b> <br /> <br /> Data for these surfaces can be in the form of Gaussian CUBE or Jmol JVXL (Jmol Voxel) format files, molecular orbitals and their associated Gaussian or Slater basis functions from computational software packages, or a number of internally calculated surface types (Shroedinger hydrogen-like atomic orbitals, LCAO-"cartoon" orbitals, spheres, ellipsoids, tear-drop shaped lobes, user-defined functions f(x,y), and Jmol-calculated solvent surfaces (accessible or excluded). If a CUBE or JVXL file is used as the source, it need not be the file that was loaded using the {#.load~} command, which reads only the atom position, not the surface. A separate isosurface command is used to read the scalar field data and construct the isosurface. This <b>isosurface</b> represents the points in space where scalar values cross a specified "cutoff" value. Inside the surface, values are greater or equal to a specified positive cutoff or less than or equal to a specified negative cutoff. The default cutoff depends upon the type of object displayed, but for CUBE or JVXL files it is 0.02. Note that positive and negative surfaces may be created separately, or, using the SIGN keyword, they can be generated together. <br /><br />You can construct different isosurfaces with different shapes and sizes by reading the same CUBE file more than once with different parameters, or by reading different CUBE files or selecting different volumes in a given CUBE file or different surfaces contained in a given JVXL file. By naming these individual surfaces with unique identifiers you can control display settings and color for each of the surfaces independently. <br /><br />Color mapping of one object onto another is a simple as listing both an object and a dataset within the same isosurface command. Several keywords affecting the mapping are allowed. The default color scheme uses a red-->orange-->yellow-->green-->blue rainbow, where red represents minimum values and blue represents maximum values. <br /><br />CUBE and JVXL files may be gzip-compressed.<br /> <br /><b>isosurface [object id] [construction/mapping parameters] [surface object] [additional mapping-only parameters] MAP [color mapping dataset] [display options] </b>','0|1|2','','') -newCmd('.isosurface','','*v+10.2 -- NEW,*v-11.0,iso','<img style="clear:right" src="isosurface.gif" alt="" />Jmol can generate a large variety of objects using the method of isosurfaces. Many of these surfaces can be color-mapped. The general syntax of the <b>isosurface</b> command is as follows: <br /> <br /><b>isosurface [object id] [construction/mapping parameters] [surface object] [additional mapping-only parameters] MAP [color mapping dataset] [display options] </b> <br /> <br /> Data for these surfaces can be in the form of Gaussian CUBE or Jmol JVXL (Jmol Voxel) format files, molecular orbitals and their associated Gaussian or Slater basis functions from computational software packages, or a number of internally calculated surface types (Shroedinger hydrogen-like atomic orbitals, LCAO-"cartoon" orbitals, spheres, ellipsoids, tear-drop shaped lobes, user-defined functions f(x,y), and Jmol-calculated solvent surfaces (accessible or excluded). If a CUBE or JVXL file is used as the source, it need not be the file that was loaded using the {#.load~} command, which reads only the atom position, not the surface. A separate isosurface command is used to read the scalar field data and construct the isosurface. This <b>isosurface</b> represents the points in space where scalar values cross a specified "cutoff" value. Inside the surface, values are greater or equal to a specified positive cutoff or less than or equal to a specified negative cutoff. The default cutoff depends upon the type of object displayed, but for CUBE or JVXL files it is 0.02. Note that positive and negative surfaces may be created separately, or, using the SIGN keyword, they can be generated together. <br /><br />You can construct different isosurfaces with different shapes and sizes by reading the same CUBE file more than once with different parameters, or by reading different CUBE files or selecting different volumes in a given CUBE file or different surfaces contained in a given JVXL file. By naming these individual surfaces with unique identifiers you can control display settings and color for each of the surfaces independently. <br /><br />Color mapping of one object onto another is a simple as listing both an object and a dataset within the same isosurface command. Several keywords affecting the mapping are allowed. The default color scheme uses a red-->orange-->yellow-->green-->blue rainbow, where red represents minimum values and blue represents maximum values. <br /><br />CUBE and JVXL files may be gzip-compressed.<br /> <br /><b>isosurface [object id] [construction/mapping parameters] [surface object] [additional mapping-only parameters] MAP [color mapping dataset] [display options] </b>','0|1|2','','') +newCmd('.hover','','','Turns on and off pop-up labels that appear when the user "hovers" the mouse over the atom. If a string is given, it is used as the label. See also {#.label~}. In the Jmol applet, even with <b>hover OFF</b>, the hover message can be sent to a JavaScript function on the applet\'s page using {#.set (callback)~set HoverCallback}.','1','._on_off_string','') +newCmd('.isosurface','','*v+11.0 -- greatly expanded to include orbitals; *vent-accessible surfaces; *v-10.2,iso','<img style="clear:right" src="isosurface.gif" alt="" />Jmol can generate a large variety of objects using the method of isosurfaces. Many of these surfaces can be color-mapped. The general syntax of the <b>isosurface</b> command is as follows: <br /> <br /><b>isosurface [object id] [construction/mapping parameters] [surface object] [additional mapping-only parameters] MAP [color mapping dataset] [display options] </b> <br /> <br /> Data for these surfaces can be in the form of Gaussian CUBE or Jmol JVXL (Jmol Voxel) format files, molecular orbitals and their associated Gaussian or Slater basis functions from computational software packages, or a number of internally calculated surface types (Shroedinger hydrogen-like atomic orbitals, LCAO-"cartoon" orbitals, spheres, ellipsoids, tear-drop shaped lobes, user-defined functions f(x,y), and Jmol-calculated solvent surfaces (accessible or excluded). If a CUBE or JVXL file is used as the source, it need not be the file that was loaded using the {#.load~} command, which reads only the atom position, not the surface. A separate isosurface command is used to read the scalar field data and construct the isosurface. This <b>isosurface</b> represents the points in space where scalar values cross a specified "cutoff" value. Inside the surface, values are greater or equal to a specified positive cutoff or less than or equal to a specified negative cutoff. The default cutoff depends upon the type of object displayed, but for CUBE or JVXL files it is 0.02. Note that positive and negative surfaces may be created separately, or, using the SIGN keyword, they can be generated together. <br /><br />You can construct different isosurfaces with different shapes and sizes by reading the same CUBE file more than once with different parameters, or by reading different CUBE files or selecting different volumes in a given CUBE file or different surfaces contained in a given JVXL file. By naming these individual surfaces with unique identifiers you can control display settings and color for each of the surfaces independently. <br /><br />Color mapping of one object onto another is a simple as listing both an object and a dataset within the same isosurface command. Several keywords affecting the mapping are allowed. The default color scheme uses a red-->orange-->yellow-->green-->blue rainbow, where red represents minimum values and blue represents maximum values. <br /><br />CUBE and JVXL files may be gzip-compressed.<br /> <br /><b>isosurface [object id] [constr... [truncated message content] |