Home / Jmol-beta / Jmol 13.3 / Jmol 13.3.6
Name Modified Size Downloads / Week Status
Parent folder
Totals: 4 Items   235.3 MB 4
Jmol-13.3.6-full.tar.gz 2013-09-27 125.5 MB 11 weekly downloads
README-13.3.6.properties 2013-09-27 120.9 kB 11 weekly downloads
Jmol-13.3.6-binary.zip 2013-09-27 54.8 MB 11 weekly downloads
Jmol-13.3.6-binary.tar.gz 2013-09-27 54.8 MB 11 weekly downloads
___JmolDate="$Date: 2013-09-27 17:08:42 -0500 (Fri, 27 Sep 2013) $" ___fullJmolProperties="src/org/jmol/viewer/Jmol.properties" # THIS IS THE DEVELOPMENT TRUNK # Developers: to add a description of changes you have made, # add it on a line below the "___JmolVersion=..." line. # Don't use ___ in your text, as that is the key for stripping out # the information saved in the JAR version of this file. # The quotes above look odd for a parameter file, but they are # important for the JavaScript version of Jmol. ___JmolVersion="13.3.6" JmolVersion="13.3.5_dev_2013.09.27" new feature: adds remote logging for applet and app via http:// and via function for applet using jmolApplet0._applet.viewer.setLogfile(function(data) {......}) new feature compare {1.1} {2.1} BONDS "smiles" -- does flexible fit based on dihedrals. -- does internal rotation even if ROTATION TRANSLATION are not given (considered a possible bug) -- concatenation of: list = compare({1.1},{2.1},"smiles","BONDS") rotate branch @list 1 compare {1.1} {2.1} SMARTS "smiles" rotate translate so, for example: load files "$tyrosine" "$lysergamide" select 1.1; color bonds red select 2.1; color bonds yellow sm = "c1ccccc1CCN" compare {1.1} {2.1} BONDS @sm rotate translate new feature: show BEST ROTATION / show BEST VOLUME (better than undocumented show rotation best, show rotation volume) new feature: set animationMode "ONCE" "LOOP" "PALINDROME" new feature: show animationMode; x = animationMode new feature: CAPTURE command, including ROCK and SPIN -- application and signed applet only (no JS) -- creates animated GIF -- uses ANIMATION FPS to determine play-back rate. CAPTURE "filename" -- starts capturing -- uses ANIMATION MODE to determine looping -- both PALINDROME and LOOP create looping; ONCE (default) does not CAPTURE "filename" ROCK x|y|z degrees -- does a clean rocking of the molecule about one of the three major axes -- axis and degrees optional; y 5 assumed -- based on: rotate Y 10 10;delay 2.0; rotate Y -10 -10; delay 2.0;rotate Y -10 -10; delay 2.0;rotate Y 10 10;delay 2.0 -- uses LOOP mode CAPTURE "filename" SPIN x|y|z -- does a full spin of the molecule about one of the three major axes -- axis optional; y assumed -- based on: rotate Y 360 30;delay 15.0; -- uses LOOP mode CAPTURE off/on -- temporarily disables/enables capturing CAPTURE "" or just CAPTURE -- end capturing new feature: set drawFontSize // defaults to 14.0 FEATURE CHANGE: added bindings: "drag" and "up" -- may affect power users who use BIND command new: _center CTRL+SHIFT+LEFT+click new: _reset SHIFT+LEFT+double+click mouse actions include one (each) of: SINGLE DOUBLE LEFT MIDDLE RIGHT WHEEL DOWN DRAG UP CLICK for example: SINGLE-RIGHT-CLICK DOUBLE-LEFT-DRAG defaults are SINGLE, LEFT, and CLICK sequence is always: down (drag,drag,drag...) up (click) (only if no drag) Any of these actions may be tapped using bind "<some mouse action>" "<jmol action or script>" Note that adding "+:" to an action bind "<some mouse action" "+:<script...>" does not replace the Jmol action, just supplements it. $ show mouse _assignNew LEFT+click assign/new atom or bond (requires set picking assignAtom_??/assignBond_?) _center CTRL+SHIFT+LEFT+click center _clickFrank LEFT+click pop up recent context menu (click on Jmol frank) _pickConnect LEFT+click connect atoms (requires set picking CONNECT) _deleteAtom LEFT+click delete atom (requires set picking DELETE ATOM) _deleteBond LEFT+click delete bond (requires set picking DELETE BOND) _depth CTRL+SHIFT+LEFT+double+drag adjust depth (back plane; requires SLAB ON) _dragAtom LEFT+drag move atom (requires set picking DRAGATOM) _dragDrawObject SHIFT+LEFT+drag move whole DRAW object (requires set picking DRAW) _dragDrawPoint ALT+LEFT+drag move specific DRAW point (requires set picking DRAW) _dragLabel SHIFT+LEFT+drag move label (requires set picking LABEL) _dragMinimize LEFT+drag move atom and minimize molecule (requires set picking DRAGMINIMIZE) _dragMinimizeMolecule LEFT+drag move and minimize molecule (requires set picking DRAGMINIMIZEMOLECULE) _dragSelected ALT+SHIFT+LEFT+drag move selected atoms (requires set DRAGSELECTED) _dragZ SHIFT+LEFT+drag drag atoms in Z direction (requires set DRAGSELECTED) _navTranslate LEFT+drag translate navigation point (requires set NAVIGATIONMODE and set picking NAVIGATE) _pickAtom LEFT+click pick an atom _pickIsosurface LEFT+click pick an ISOSURFACE point (requires set DRAWPICKING _pickLabel LEFT+click pick a label to toggle it hidden/displayed (requires set picking LABEL) _pickMeasure LEFT+click pick an atom to include it in a measurement (after starting a measurement or after set picking DISTANCE/ANGLE/TORSION) _pickNavigate CTRL+SHIFT+LEFT+click pick a point or atom to navigate to (requires set NAVIGATIONMODE) _pickPoint LEFT+click pick a DRAW point (for measurements) (requires set DRAWPICKING _popupMenu CTRL+LEFT+down, RIGHT+down pop up the full context menu _reset SHIFT+LEFT+double+click, MIDDLE+double+click reset (when clicked off the model) _rotate LEFT+drag rotate _rotateBranch SHIFT+LEFT+drag rotate branch around bond (requires set picking ROTATEBOND) _rotateSelected ALT+LEFT+drag rotate selected atoms (requires set DRAGSELECTED) _rotateZ ALT+LEFT+drag, SHIFT+RIGHT+drag rotate Z _rotateZorZoom SHIFT+LEFT+drag, MIDDLE+drag rotate Z (horizontal motion of mouse) or zoom (vertical motion of mouse) _select LEFT+double+click select an atom (requires set pickingStyle EXTENDEDSELECT) _selectToggleOr LEFT+click if all are selected, unselect all, otherwise add this group of atoms to the set of selected atoms (requires set pickingStyle DRAG) _setMeasure LEFT+double+click pick an atom to initiate or conclude a measurement _slab CTRL+SHIFT+LEFT+drag adjust slab (front plane; requires SLAB ON) _slabAndDepth CTRL+ALT+SHIFT+LEFT+drag move slab/depth window (both planes; requires SLAB ON) _slideZoom LEFT+drag zoom (along right edge of window) _spinDrawObjectCCW LEFT+drag click on two points to spin around axis counterclockwise (requires set picking SPIN) _spinDrawObjectCW SHIFT+LEFT+drag click on two points to spin around axis clockwise (requires set picking SPIN) _stopMotion LEFT+double+click stop motion (requires set waitForMoveTo FALSE) _swipe LEFT+drag spin model (swipe and release button and stop motion simultaneously) _translate CTRL+ALT+LEFT+drag, CTRL+RIGHT+drag, SHIFT+LEFT+double+drag, MIDDLE+double+drag translate _wheelZoom WHEEL zoom bug fix: JSON NIO port SYNC broken bug fix: print getProperty("image", "width=200;height=300;type=png") not working bug fix: write IMAGE "t.png" not working bug fix: rotate -10 -10 not working bug fix: mouse bindings not distinguishing DOWN/CLICK/DRAG/UP properly bug fix: mouse bindings _center and _reset not working bug fix: show MOUSE not including user-defined mouse bindings bug fix: chains improperly selected in JSmol/HTML5 bug fix: JSmol/HTML5 not allowing drag-drop or file loading from a local drive. bug fix: JSmol/HTML5 not allowing WRITE FILE ? bug fix: JSmol/HTML5 not allowing WRITE xxx.pdb, xxx.mol, etc bug fix: platformSpeed persists but appears unreadable after loading a state bug fix: JavaScript version InputStreamReader not processing non-UTF data correctly bug fix: second reading of older PNG files with embedded script fails due to improper png file caching code: overhaul of image creation methods code: careful attention to core functions yields results in 10% reduction in core download size: -- uncompressed(former) gzipped -- JSmol.min.nojq.js 134K 38K -- core.z.js 1586K(1781K) 364K -- corescript.z.js 378K (436K) 95K -- TOTAL 2098K(2217K) 497K (9.5% reduction) -- JmolApplet0.jar 1038K 1005K -- Thus, the "real" transfer size -- based on server-side gzipping -- is half the size of Jmol/Java. code: continued refactoring of ScriptEvaluator to ScriptExt code: refactoring to isolate LabelToken and Labels from core JavaScript load code: refactoring, simplification of image output and export -- folders created: org.jmol.image, org.jmol.dialog -- JpgEncoder, Jpg64Encoder, PngEncoder brought to org.jmol.image and made subclasses of ImageEncoder -- PpmEncoder fixed -- ImageEncoder stripped of all unnecessary ImageConsumer/producer business -- org.jmol.export.image.ImageCreator and parts of org.jmol.viewer.stateCreator reorganized into org.jmol.OutputManager, org.jmol.OutputManagerAwt, and org.jmol.OutputManagerJS -- clipboard functions moved into org.jmol.awt and org.jmol.awtjs2d -- org.jmol.io.JmolOutputChannel now serves for just about all output needs. code: major simplification and consolidation of file I/O methods, including exporters, using JmolOutputChannel class. code: only FileOutputStream reference is one reference in org.jmol.awt. code: code merge between 13.2 and 13.3 18 Sept 2013 code: major clean-up of ActionManager JmolVersion="13.3.5" JmolVersion="13.3.5_dev_2013.09.06" new feature: show NMR taps into NMRDB directly -- for now, application only bug fix: CRYSTAL reader not allowing vibration for conventional cell bug fix: JavaScript binary for Safari and Opera new feature: strutureModifiedCallback bug fix: ID @id vector fails JmolVersion="13.3.4" bug fix: select 1-5 broken JmolVersion="13.3.4_dev_2013.08.21" bug fix: JANA2006 reader not processing occupancies -- read now forced to "PACKED" in order to calculate site multiplicity bug fix: CIF reader not reading _CCDC_GEOM_BOND_TYPE record bug fix: File dialog problems with paths having space bug fix: GAMESS reader not reading energies bug fix: TRY failure in a load command followed by a successful load having a loadScript will pop past the second TRY and crash Jmol new feature: _logfile holds full path to logfile code: Incommensurate modulated structure CIF and M50/40 file loading validation -- includes d=1 and d=2 -- Fourier, sawtooth, crenel bug fix: translation not read from state new feature: set platformSpeed [0 to 10] -- basically an expanded "set wireframe OFF" with more options -- only effected during model rotation (including mouse dragging, spin, vibration, and animation) -- default value is 10 (all features; no compromises) -- value >= enables 8 antialiasDisplay (and thus, all features) 7 translucency 6 meshes (contact, draw, isosurface, MO, pmesh, lcaocartoon, CGO) 5 cartoons, rockets, trace, ribbon 4 geosurfaces 3 ellipsoids 2 wireframe and balls 1 none of the above (same as "set wireframeRotation off") 0 [reserved for "auto"] FEATURE CHANGE: set wireframeRotation expanded new feature: show ROTATION BEST -- operates on currently selected atoms -- reports "{quaternion}" new feature: quaternion("best") -- delivers actual quaternion new feature: show ROTATION VOLUME -- calculates approximate best box (from 1495 quaternion-based alternatives) -- reports "<volume> {dx dy dz}" -- where <volume> is the volume, -- and {dx dy dz} are the dimensions, where dx > dy > dz new feature: rotate BEST new feature: rotate SELECTED BEST new feature: pop-up menu selection "view...best" bug fix: CIF reader does not find Hall name for space groups bug fix: binding names not included in SHOW MOUSE bug fix: "single" touch can fire double-click bug fix: {x}.tensor() command fails when no atom tensors bug fix: isosurface slab not allowing two different slabs for two diffrent isosurfaces bug fix: set wireframeRotation not working ("inMotion" flag not properly read in Viewer). bug fix: screen repaints were being requested far too frequently *indicates when a refresh is made (external apps and applets only) external apps only via loadInline(List)* createModelSetAndReturnError openDOM, openReader, openFile, openFiles via loadModelFromFileRepaint* createModelSetAndReturnError loadInLine(String) via loadInLineScriptRepaint* FileDropper (string drop) via openStringInline* via openStringInlineParamsAppend createModelSetAndReturnError external apps, applet only, via loadInline(String[])* via openStringsInlineParamsAppend createModelSetAndReturnError script LOAD via loadModelFromFile createModelSetAndReturnError script CALCULATE HYDROGENS, PLOT, ZAP (modelkit) via openStringInlineParamsAppend createModelSetAndReturnError script LOAD DATA via loadFileFull and loadInlineScript openStringsInlineParamsAppend createModelSetAndReturnError new feature: incommensurate modulation of ADPs. new feature: Jana2006 M40/M50 file reading bug fix: set loglevel 6 (debugHigh) not working bug fix: {*}.tensor("", "id") not implemented bug fix: {*}.tensor("") not implemented bug fix: {*}.tensor("adp") fails bug fix: {*}.symmetry fails when space group is P1 bug fix: atom tensors lost when merging bug fix: Jsmol menu and console broken in 2013.08.07 when jQuery calls were all moved into JSmolCore.js bug fix: float parser broken in dev_2013.08.07 code: reorganization of ScriptEvaluator into two sections, one optional new feature: COMPARE {atoms} [coords] new feature: COMPARE {atoms} ATOMS {subset1} [coords1] {subset2} [coords2] ... new feature: MODULATION command -- for modulated structures -- operates on currently selected set of atoms -- MODULATION ON -- MODULATION OFF -- MODULATION t -- sets modulation "t" of selected atoms -- MODULATION PLAY t1 t2 -- animates a once-through sequence of t from t1 to t2 -- MODULATION FPS x.x // may be < 1 -- sets speed of animation bug fix: zoom setting lost in state code: incommensurate crystal work -- Uiso, preliminary Uij and subsystems code: incommensurate crystal work -- occupancy Crenel, displacive sawtooths bug fix: shapeInfo not reporting visibility of isosurface code: pdb, cif readers separated into separate packages; p2n, pqr readers with pdb now new feature: Jana2006 reader -- reader for http://jana.fzu.cz/ new feature: CIF reader reads incommensurate modulated structures -- FILTER options include: -- NOSPECIAL (include special atoms for debugging -- MODAVERAGE (do not read modulation -- MODAXES=xyz (select only specific axes -- x, y, and/or z) -- NOSYM (no symmetry read) code: Even faster float parsing bug fix: filter lost after CENTROID or PACKED load option bug fix: set rangeSelected not functional new feature: msCIF file reading of incommensurate modulation data as vibration new feature: msCIF file filter "MODAXES=xxx" where xxx = X,XY,XYZ,YZ,etc. new feature: msCIF file filter "MODAVE" gives average structure with vibration vectors. bug fix: minimization can fail after MMFF switches to UFF. bug fix: CIF reader fix for no element given "phenyl1" in ZjzxlegN.cif JSmol: Jmol form moved to end of body JSmol: All $(xx) references moved to JmolCore.js JmolVersion="13.3.3_dev_2013.07.27" code: reconfigured JSmol build no longer needs jsmol/make directory. bug fix: Gaussian cube format changed and not recognized (extra "1" in third line). bug fix: PDB header don't do trim(); bug fix: isosuface ID @x ... becomes isosurface ID "@x" bug fix: color chain broken bug fix: rockets with color chain bug fix: filter ":X" broken bug fix: O not 2- in PDB adding hydrogens bug fix: NWChem reader error TODO: mouse exit then release doesn't trigger release TODO: ingenol/jsmetest.htm? TODO: minimization set position calculation optimization? TODO: documentation (see below, including % units on measure distance) TODO: isosurface SLAB TRANSLUCENT 0.x color -- inherits color of isosurface when color parameter is absent -- TODO - properly save in JVXL file TODO: PyMOL uniqueAtomSettings for transparency -- will require by-vertex translucent option bug fix: JSmol 2-sided surface color problem due to Java2Script miscoding of Number.shortValue() bug fix: PyMOLMeshReader code clean-up. JmolVersion="13.3.2_dev_2013.07.21" bug fix: PyMOL mesh reader broken for EDS files JmolVersion="13.3.1_dev_2013.07.20" bug fix: MMCIF_PDBX structures not being read bug fix: allow PyMOL PSE files reading as part of a set of files, not just by itself bug fix: quaternion plots not synched with originating structure bug fix: 1skt.cif loses secondary structure (MMCIF_PDBX reader needed) new feature: calculate formalCharge bug fix: set showTiming not functional bug fix: set pdbAddHydrogens does not set formal charge on O(1-) or "O" of H2O (2-) bug fix: PNGJ files not properly caching, and PSE files with DOCACHE option JmolVersion="13.3.0" JmolVersion="13.1.19_dev_2013.07.18" new feature: set exportScale x.x -- adjusts export scale -- only implemented for VRML and X3D exporters new feature: unitcell center {atomset} new feature: unitcell center {fx fy fz} new feature: {*}.ms, {*}.cs %[ms] %[cs] magnetic shielding and chemical shift new feature: label <color red>xxx</color> new feature: set shift_H xxx (ppm) new feature: getProperty("nmrInfo") new feature: NMR analysis tools: -- x = measure({a} {b} "isc_hz") -- J coupling -- x = measure({a} {b} "dc_khz") -- dipolar constant -- MEASURE {a} {b} "2://dc_hz" -- dipolar constant -- MEASURE {a} {b} "2:%3.2VALUE//dc_khz" -- dipolar constant -- MEASURE {a} {b} "2://khz" -- defaults to dc_khz -- MEASURE {a} {b} "2://hz" -- defaults to isc_hz -- MEASURE {a} {b} "2://isc_1hz" new feature: {xxx}.tensor(type,what) -- type = "temp", "ms", "efg", etc. -- returns a list of data. isc-type returns a list of lists [index1, index2, value] -- what = "j" (isc-type only) "chi" (efg only) "dc" (dipolar coupling constant; type ignored) "eigenvalues" float[v1,v2,v3] "eigenvectors" P3[V1,V2,V3] "value" Float (v3) "asymMatrix" Matrix3f "symMatrix" Matrix3f "isotropy" Float v_iso=(v1 + v2 + v3)/3 "anisotropy" Float v3 - (v1 + v2)/2 "asymmetry" Float (v2 - v1)/(v3 - v_iso) "eulerzxz" float[] "eulerzyz" float[] "quaternion" Quaternion "indices" float[modelIndex,atomIndex1,atomIndex2] "string" selected readable data "type" anything else -- all key/value pairs new feature: bind "+:<script...>" -- added "+:" indicates to NOT unbind Jmol action new feature: ellipsoid OPTIONS "xxxx" -- "xxxx" is a quoted string of options separated by semicolon: "arcs;arrows;axes;ball;dots;fill;wireframe" with optional "no" in front of each new feature: SET ECHO POINT {atom or point} -- allows 2D and 3D echos to have pointers to atoms or points bug fix: set shift_XX not saved in state bug fix: JSmol menu not disappearing upon touch outside menu bug fix: PyMOL surface map reading error bug fix: magres measurement of dipole coupling constants do not reach just min-distance set bug fix: "cs" for Cs symmetry broken in chemicalshift bug fix: cartoons with too small nonzero size will not render anything code: org.jmol.quantum.NMRCalculation smoothly handles J-coupling and dipolar coupling constant display. code: org.jmol.quantum.NMRCalculation implements org.jmol.api.JmolNMRCalculation: public float getQuadrupolarConstant(Tensor efg); public float getJCouplingHz(Atom a1, Atom a2, String type, Tensor t); public float getDipolarConstantHz(Atom a1, Atom a2); public float getDipolarCouplingHz(Atom a1, Atom a2, V3 vField); public JmolList<Tensor> getInteractionTensorList(String type, BS bs); public BS getUniqueTensorSet(BS bs); public JmolList<Object> getTensorInfo(String tensorType, String infoType, BS bs); public Map<String, Float> getMinDistances(MeasurementData md); public boolean getState(SB sb); public Object getInfo(String sym); JmolVersion="13.1.17_dev_2013.06.27" new feature: CASTEP reader filter option q=all new feature: set picking DRAGLIGAND -- won't move the protein new feature: CIF reader upgrade to allow multicharacter chain specs. -- See 1bgl_1bgm.cif -- automatically switches to chainCaseSensitive if multi-character or lower-case chains are read in a CIF file. -- note that in certain cases quotation marks will be needed: select chain=0123 NOT OK select :0123 NOT OK select chain="0123" OK select :"0123" OK select :"A*" or :"A'" or :'A"' or :"A\"" TODO: document these: new feature: {atomset1}.distance.min({atomset2}) -- returns an array -- minimum distance of each atom in atomset1 to any atom in atomset2 new feature: {atomset1}.distance.max({atomset2}) -- returns an array -- maximum distance of each atom in atomset1 to any atom in atomset2 note: much of the next compare/branch business was built into a new COMPARE command for Jmol 13.3.6 new feature: list = compare({atomset1} {atomset2} "ccCCN" "BONDS") -- determines the dihedrals that match atomset1 to atomset2 -- returns arrays of length 6n, list[6n] which lists six numbers for each dihedral in the comparison set, including i1 i2 i3 i4 set1value set2value, where i1-i4 are atom indices, and set1value and set2value are the dihedral angles in sets 1 and 2, respectively. -- feeds into the rotate BRANCH @list command new feature: BRANCH @list -- takes a list of 6n numbers from compare function -- rotates all dihedrals in the selected atom set to target values concurrently // application: flexible substructure fit using a SMARTS search load files "$tyrosine" "$lysergamide" select 1.1; color bonds red select 2.1; color bonds yellow sm = "c1ccccc1CCN" list = compare({1.1},{2.1},sm,"BONDS") rotate branch @list 1 compare {1.1} {2.1} SMARTS @sm rotate translate // at this point the two models match almost perfectly among these key atoms. new feature: {1.1}.find("ccCCN", "BONDS") -- finds the first match in the structure to the given SMARTS string -- returns an n-length array of 4-length arrays, list[n][4] -- each list[i] is a set of four atoms in bond-connected order -- full list comprises all dihedrals in the found set of atoms. new feature: set translucent -- default TRUE : translucent objects are fully translucent -- FALSE: translucent objects are opaque to other translucent objects bug fix: CrystalReader broken by recent change to simpleReplace() bug fix: PyMOL movie start frame bug fix: PyMOL putty broken bug fix: pdbAddHydrogens may miss O3' or O5' H atoms at end of DNA strands bug fix: pdbAddHydrogens may miss H in first group of a chain bug fix: set defaultDrawArrowScale broken bug fix: "ligand" should include all _g=0 (nonPDB atoms) bug fix: applet getpropertyAsArray("bondInfo") fails bug fix: JSmol script/scriptWait nuance with moveto. -- when using scriptWait with HTML5, there can be no threading bug fix: invertSelected on trajectory causes nullPointerException bug fix: POLYHEDRA with faceCenterOffset not saved in state properly; EDGES option nonfunctional bug fix: JavaScript not returning arrays properly from Jmol.getPropertyXXXX() -- very important to have {} after j2sNative directive! bug fix: COMPARE could rotate to less-good fit with SMARTS search bug fix: draw ARROW ATOM/BOND broken bug fix: animation MORPH broken for non-PyMOL files -- load trajectory ({0 6}) 1cdr.pdb -- animation MORPH 10 -- animation ON -- load trajectory "test1.pdb" "test2.pdb" -- animation MORPH 30 -- animation ON bug fix: draw ARROW ATOM/BOND broken bug fix: draw ARROW with offset disallows set picking draw adjustments bug fix: concurrent loading of two cif files by two different applets fails bug fix: draw LINEDATA not operative (undocumented, for state; from draw xxx INTERSECT yyy) -- needs revision to create DATA option; can be huge and very long to process state file bug fix: load :2-butanone fails bug fix: PyMOL volume map data saved from PyMOL 1.6 has slightly different data structure bug fix: jvxl reader ignores jvxlVertexColorData bug fix: ellipsoid rendering problems code: MagRes/CASTEP reader upgrades code: color/translucent/opaque clean up in ScriptEvaluator ============================================================================= JmolVersion="13.1.16_a" new feature: set defaults PyMOL -- zoomHeight TRUE -- measurementUnits ANGSTROMS new feature: color BALLS -- distinct from color ATOMS because it doesn't get inherited -- for PyMOL compatability with sphere_color TODO: document these: new feature: restore SCENE "xxxx" nSec new feature: Scene menu -- PyMOL scene names, in order new feature: added parameters to moveTo allows setting cameraDepth, cameraX, and cameraY new feature: moveTo <nseconds> PYMOL [18-element standard PyMOL view matrix] -- used for PSE file loading -- to be used also for scenes [0-8] are 3x3 rotation matrix (row/column inverted) [9,10] are x,y translations (y negative) [11] is distance from camera to center (negative) [12-14] are rotation center coords [15-16] are slab and depth distance from camera (0 to ignore) [17] is field of view; positive for orthographic projection new feature: cache CLEAR -- same as cache REMOVE ALL new feature: load xxx.pse FILTER "DOCACHE" -- specifically for editing large PSE files when included in a state -- caches streamlined file that is still readable by PyMOL (needs testing!) (no electron density map data, for instance -- see HupA_2.pse) -- caches all isosurfaces, creating JVXL equivalents -- should be followed with WRITE xxx.pngj or WRITE xxx.jmol or WRITE xxx.zip -- for example: before: 04/07/2013 07:46 AM 11,929,507 HupA_2.pse $ zap;load "HupA_2.pse" filter 'DOcache' $ write t.zip after: Listing archive: t.zip Physical Size = 395174 Date Time Attr Size Compressed Name ------------------- ----- ------------ ------------ ------------------------ 2013-05-17 06:46:36 ..... 1092432 219718 HupA_2.pse 2013-05-17 06:46:36 ..... 1473760 6589 isosurface_level2 2013-05-17 06:46:36 ..... 25495 11624 state.spt 2013-05-17 06:46:36 ..... 134 119 JmolManifest.txt 2013-05-17 06:46:36 ..... 0 2 Jmol_version_13.1.16_dev_2013.05.17__2013-05-15_07.09 2013-05-17 06:46:36 ..... 158082 156316 preview.png ------------------- ----- ------------ ------------ ------------------------ 2749903 394368 6 files, 0 folders new feature: anim FRAMES [1, 3, 9, 9, 9, 3, 1] -- arbitrary PyMOL-like model list new feature: FRAME n -- same as MODEL n, unless we have PyMOL-like frames -- if have frames, then FRAME 2 goes to the second frame (model 3 in this case) -- MODEL n still always goes to a specific model. -- all relative options -- FIRST LAST PREV NEXT -- refer to frames if there are frames even if the MODEL command is given. new feature: pyMOL PSE state options: LOAD "FOO.PSE" state FILTER "xxxx" -- [state not present; default] load all PyMOL states (one PyMOL state == one Jmol model) -- state = 0 (load only the current PyMOL state) -- state > 0 (load just a specific PyMOL state) -- FILTER "nosurface" -- load PyMOL file without surfaces new feature: getProperty BONDINFO {atomset1} {atomset2} new feature: measurements with IDs and radius/diameter: -- measure ID "xxx" ... -- measure ID "xxx" RADIUS x.y (or DIAMETER x.y) -- renders as dots new feature: set zoomHeight -- FALSE by default -- set TRUE for PyMOL-like resizing (scale only set by height adjustment) new feature: isosurface color density (decimal) - variable decimal point size new feature: PyMOL CGOs as CGO command - needs testing - CGO ID "xxx" [ cgo data (float array) ] - includes basic CGO methods BEGIN GL_POINTS GL_LINES GL_LINESTRIP GL_TRIANGLE GL_TRIANGLE_STRIP GL_TRIANGLE_FAN VERTEX END COLOR NORMAL SIMPLE_LINE SAUSAGE TRICOLOR_TRIANGLE popup: added menu for MEP range -0.1 0.1 PyMOL: uniqueBondSettings working PyMOL: better scene restore; PyMOL: adds SASURFACE option (surface_solvent ON), with "carving" (ProFusion_ABL.pse, scene F6) PyMOL: abstraction of scene setting from reader PyMOL: first phase of reader development complete (working with Jaime Prilusky) -- 104 test models http://ispcsrv3.weizmann.ac.il/a2jmolb/browse -- implementation of standard objects, including: -- atoms with labels -- bonds -- standard PyMOL rendering, including: -- lines -- sticks -- nonbonded (stars) -- nb_spheres -- cartoons of various types (not plank) -- rockets -- ribbon (backbone/trace) -- putty (trace) -- dots -- measures -- simple CGO objects -- molecular surfaces -- electron density as points and meshes -- custom colors -- fog and slab -- morphing movies -- JVXL caching of isosurfaces PyMOL: measurement font/offsets enabled -- adds measure ID "xxx" FONT scale face style -- adds measure ID "xxx" OFFSET [mode, sx, sy, sz, ax, ay, az] -- adds measure ID "xxx" OFFSET {sx, sy, sz} PyMOL: perspective fix for translated center -- H115W.PinM.PSE PyMOL: preliminary scene implementation -- view only -- use RESTORE ORIENTATION xxxxx code: Text.java, Object2d.java moved from shapes to modelset bug fix: COMPARE move of group saved in state may not be correct when restored bug fix: write command doesn't accept parameter sequence IMAGE PNGJ ... (broken in 13.1.14) bug fix: load APPEND with PDB file loses structure (broken in 13.1.15) bug fix: restore command broken bug fix: JavaScript: adding SYNC bug fix: antialiasing or resizing stray lines problem solved (introduced in 11.0, 08/2006!) bug fix: "display add" by itself should not do anything bug fix: Hall translation initialization problem bug fix: JavaScript reading of old-style JVXL files bug fix: Gaussian reader not splitting MO set by model bug fix: polyhedron reading from state bug fix: connect delete not saved in state bug fix: rockets not working for alpha polymer (also in 13.0.16) bug fix: GXL added to carbohydrates bug fix: show state/anim turns "anim" into "animation" bug fix: MoldenReader orbitals are not in energy order; use FILTER "NOSORT" to prevent sorting by energy bug fix: simultaneous spin/animation broken in 13.1.13 bug fix: MoldenReader fix for file blank lines and g,h,i orbitals - also for 13.0.16 bug fix: COMPARE does not allow nSeconds at beginning, as described in documentation bug fix: isosurface VOLUME/AREA SET n cannot return to full array reporting; SET -1 added. bug fix: isosurface VOLUME/AREA always returns an array, possibly of length 0 bug fix: isosurface molecular/solvent can give inappropriate inner surfaces bug fix: show selected includes deleted atoms ============================================================================= JmolVersion="13.1.15" FEATURE CHANGE: default JPEG quality set to 100 (was 75, which looks crappy) new feature: select command parameter completion using [TAB] includes variables new feature: PyMOL-like label offset options: set labelOffset [sx, sy, sz] set labelOffset [mode, sx, sy, sz, ax, ay, az] where sx,sy,sz are screen coord offsets -- in Angstroms -- applied after view rotation -- sy > 0 LOWERS label ax,ay,az are xyz position (in Angstroms; applied before view rotation) mode == 1 indicates xyz position is an offset to the atom position mode != 1 indicates xyz position is absolute defaults: mode == 1; ax = ay = az = 0 new feature: CASTEP energy reading new feature: XCrysDen file reader new feature: VASP POSCAR reader new feature: set cartoonLadders -- no bases, like PyMOL new feature: model CREATE n -- allows "empty" model creation without atoms -- n = number of models to create -- defaults to 1 new feature: "all frames" toolbar button starts/stops PyMOL movies: if(_isMovie){if (_animating) {animation off}else{animation play}} else {frame *} new feature: Jmol/JmolData application -I flag accepts input from System.in and command piping: type t.spt | jmol -I start Jmol with this script Note: if you use a pipe, be sure to make "exitJmol" the last command of the script Add -o for output to System.out. Without the pipe, we are going to control Jmol from a Jmol> prompt on the command line console jmol -Io see messages on input console ...messages from Jmol Jmol> background red;load 1crn.pdb;.... ...messages from Jmol Jmol> exitJmol Add -n for headless operation (will not exit automatically). type t.spt | jmol -Ion Note: if you use a pipe, be sure to make "exitJmol" the last command of the script Add -i for silent operation (no writing to System.output). new feature: dots IGNORE {atom set} ON; new feature: Jmol or JmolData with -g0x0 and load filter "DORESIZE" will automatically resize the image to what is given in the PyMOL file as its default size: JmolData -ns "load t.pse filter 'DORESIZE'" -g0x0 -w "PNGJ:t.png" bug fix: isosurface map property may not reference correct atom bug fix: set isosurfacekey may not work with slabbing bug fix: deleting atoms does not remove bioshape rendering bug fix: isosurface in multi-model context saved in state with wrong model number bug fix: PyMOL label fix, including fonts bug fix: PyMOL rockets, nucleic acid rendering bug fix: write JPG not working in JavaScript bug fix: isosurface ... map property colors not cleared entirely before next mapping bug fix: MSMS reader broken bug fix: labels lost upon z-shading bug fix: isosurface property temperature default smoothing broken in 13.1.13. bug fix: {xxx}.cartoon = {xxx}.temperature.all fails to use correct values (also backbone, trace, etc.) bug fix: isosurface translucent level not re-zeroed properly bug fix: IDTF exporter with translucency fails bug fix: commands f.sort() and f.reverse() fail. bug fix: {;...;} syntax does not work in 13.1 bug fix: select dots > 0 does not work bug fix: JmolData broken code: PyMOL work; CGO command and class CGO extends DRAW preliminary only; preliminary putty; fix for putty+sticks issue code: PyMOL reader localSettings code: PyMOL putty hack for Cover1.pse removed; colix index error fixed code: PyMOL slab and depth; better field of view; even better zslab/zdepth code: PyMOL reader "backbone" (really a trace -- fixed width?) code: PyMOL reader isosurface solvent code: PyMOL reader and full surfaces, mixed bigEndian/littleEndian Pickle reading code: PyMOL reader: cartoon_ladder_mode approximation as cartoons code: PyMOL reader: includes cartoon type 1,4,7 -> trace code: String JmolViewer.runScript(String script) runs script immediately and returns output buffer code: continued work on PyMOL PSE file reader code: simplification of JmolViewer interface and access to global parameters: // several; methods were deprecated and removed in 13.1.15. All are accessible via "getXxxx" methods: abstract public float getFloat(int tok); abstract public int getInt(int tok); abstract public boolean getBoolean(int tok); //abstract public int getAnimationFps(); see getInt(T.animationFps) //abstract public boolean getShowHydrogens(); see getBoolean(T.showhydrogens) //abstract public boolean getShowMeasurements(); see getBoolean(T.showmeasurements) //abstract public boolean getAxesOrientationRasmol(); see getBoolean(T.axesorientationrasmol) //abstract public int getPercentVdwAtom(); see getInt(T.percentvdwatom) //abstract public boolean getAutoBond(); see getBoolean(T.autobond)) //abstract public boolean showModelSetDownload(); deprecated -- was just "true" ============================================================================= JmolVersion="13.1.14" new feature: JVXL vertex-only data encoding "none" allows hand-coding of JVXL files new feature: isosurface efvet reader data "0" is "indicated colors" -- isosurface "test.efvet" 0 JavaScript: WebGL fix involving Collections.list calling ArrayList.add() JavaScript: disambiguation of Mesh() JavaScript: changing to utf-8 String nonbinary reading of .po files JavaScript: localization working code: cleaning up of Escape and checks for array types code: JavaScript does not need a visible canvas to create images -- could allow for "headless" JS operation bug fix: isosurface boundbox plane .... bug fix: isosurface boundbox {pt1} {pt2} plane ... bug fix: JVXL 1.0 format reading broken bug fix: MOL2 reader not properly assigning element symbols bug fix: isosurface slab translucent broken when saved in state bug fix: isosurface slab translucent mesh broken when saved in state bug fix: JavaScript minimization fix bug fix: sync socket connections not working bug fix: "navigate percent" broken bug fix: isosurface area/volume broken bug fix: JavaScript WRITE IMAGE with HTML5 does not allow change of width or height bug fix: WRITE PNGJ does not allow sizing of image bug fix: backbone/spine defs do not take into account phosphorylated proteins. Better: "@backbone protein&(_a>=1&_a<6|_a>=64&_a<72)|nucleic&(_a>=6&_a<14|_a>=72)", "@spine protein&_a>=1&_a<4|nucleic&_a>=6&_a<14&_a!=12", bug fix: getProperty fileInfo fixed and documented bug fix: assign atom does not update selections for elements bug fix: FileDropper broken bug fix: LcaoCartoon "-sp3d" not working bug fix: PyMOL PSE files not accessible by Jmol app File...Open or drag/drop bug fix: incorrect calculation of RMSD for COMPARE and SMILES bug fix: ModelKit menu "SHIFT to rotate" should read "ALT to rotate" bug fix: starting applet console takes two clicks bug fix: JavaScript SMILES bug (String.replaceAll() does not work bug fix: JavaScript LOOP command not implemented ============================================================================= JmolVersion="13.1.13" FEATURE CHANGE: multiple applets no longer share the same lighting space new feature: animation DISPLAY {atomset} - applies a filter to a running animation to display only a certain set of atoms. - for example: load test.pse animation display {act_site} // defined in test.pse new feature: animation MORPH n - where n is a number of frames to be inserted between trajectories - requires previous LOAD TRAJECTORY or the loading of a PyMOL PSE file having a movie (automatically a trajectory) - Jmol will do a linear morph as the animation runs. - for example: load test.pse animation morph 3 - could be used for a linear morph between just two structures: load trajectory "test1.pdb" "test2.pdb" animation morph 32 // animation will run 33 frames new feature: frame -x.y - negative decimals indicate a linear morph is requested between two trajectory frames. - for example: load test.pse frame -3.5 new feature: set celShading TRUE -- produces cel shading effect - see http://en.wikipedia.org/wiki/Cel_shading - introduced by N David Brown new Feature: Experimenting with ellipsoid {atom set} and ellipsoid $isosurfaceID new feature: PyMOL PSE reader enhancements -- labels, simple surfaces, measures new feature: isosurface xxxx MAP property COLOR -- allows inheritance of color from underlying atom (as in PyMOL) new feature: UHBD grid file reader new feature: DelPhi grid file reader new feature: load =xxx/ where xxx is a database code that can be set up in the future by a user. -- currently including mp MaterialsProject http://www.materialsproject.org/materials/%FILE/cif -- along with ligand, nci, nmr, pdb, pubchem -- see JmolConstants.databases for the full list. -- note that nci can take an additional tag such as /names after the name, and pubchem can take one before it: load =mp/1 load =nci/caffeine load =pubchem/caffeine load =pubchem/cid/2345 print(load('=nci/caffeine/names')) bug fix: set picking IDENT when picking is already ident can cancel a pending measurement bug fix: applet does not refresh when mouse exits with pending measurement bug fix: labels within fog should be hidden bug fix: load CENTROID does not always work -- wrong implicit normalization flag (was -1 instead of 1) bug fix: property_xxx does not work (since 10/3/12, 13.1.7) bug fix: The "show history" command is supposed to clear out the "show history" command itself, but only if it is a top-level command (from the console), but it does more than that if it is part of script("show history"). Probably true with all recent versions of Jmol. bug fix: isosurface binary file reading (MRC, CCP4, O, binary PMESH, etc.) broken bug fix: JavaScript: zoomTo [seconds > 0]... and restore rotation|orientation [name] [seconds > 0] not waiting code: Refactoring class names to reduce JSmol JavaScript footprint ScriptVariable --> SV Token --> T BitSet --> BS BitSetUtil --> BSUtil Colix --> C Point3f --> P3 Point3fi --> P3i StringXBuilder --> SB Vector3f --> V3 JmolConstants --> JC code: shader functions removed from Colix; Shader class made nonstatic code: refactored to allow scriptless JavaScript. (reduces initial core code load size by 25%, to 2.5Mb) ============================================================================= version="13.1.12" new feature: PDB reading of X-PLOR using hybrid-36 and NAMD files using hex -- see https://www.schrodinger.com/AcrobatFile.php?type=supportdocs&type2=&ident=530 -- see http://cci.lbl.gov/cctbx_sources/iotbx/pdb/hybrid_36.py new feature: load xxx.pdb filter "TYPE i,n" -- loads custom text fields into the "atomType" property of an atom upon customized PDB file loading where i is the number of the column (starting with 1) and n is the number of columns -- text is trimmed -- e.g. load xxx.pdb filter "TYPE 73,4" loads four characters starting at column 73 as "atomType" (segID) -- to convert to a numerical value, convert that to .property_foo: load xxx.pdb filter "type 22,4"; {*}.property_seqNo = {*}.atomType new feature: PDB filter "TYPE 73,4=xxx" -- loads four characters starting at column 73 (1-based) as "atomType" -- loads only those atoms with atom types starting with "xxx" new feature: axes labels "a" "b" "c" "xxx" where "xxx" is the label for the origin bug fix: PDB file reading of remediated 1A7Y and 1E9W error due to too many CONECT bonds -- now reads HEADER columns 63-66 for 4-digit PDB ID. -- only if this ID is absent will the number of CONECT bonds be checked in decision to autobond bug fix/update: revision of the pages that make the About menu (application) in each language. -- Some changes that had been formerly applied to the English page are now in all. (Removal of copyright date in text) -- All About_xx.html files are now encoded and saved in UTF-8 w/o BOM, except Chinese which is in GB2312/GB18030. -- Extended characters in tr and zh that had become corrupt across revisions were restored from old ones. -- Several html header tags updated or added (html5 doctype, charset, lang) -- Hopefully all will display correctly after these changes! JavaScript: fix for SMILES matcher and compare({*},{*},"isomer") -- j2s reminder: Can't use Java new int[n][]; must use org.jmol.util.ArrayUtil.newInt2(n) JavaScript: going to Float64Array for all noninteger arrays -- all numbers double Note that this could cause differences with Jmol, but I think we will have to live with that. The problem was with (new Float32Array([13.48]))[0] != 13.48. So instead of trying to force floats, it seems to make more sense to me to force doubles, using Float64Array instead of Float32Array. Thanks given to Ira Hanson for clearing this up for me. JavaScript: JSmol writes PNG, PNGJ, JMOL, ZIP files from a web page JavaScript: JSmol writes text files from a web page ============================================================================= version="13.1.11" new feature: Jmol app "recent files" recognizes if file was drag-dropped or opened via "File Open" new feature: color cartoons red blue -- front/back colors -- preliminary - only for hermiteLevel = 0, not cartoonFancy -- a bit rough at the edges -- not in state bug fix: 13.1 does not calculate partial charges (mark/reset fault in reading resource files) bug fix: MOPAC2012 files not recognized bug fix: patch 3581394 - small fixes for cartoon meshes bug fix: 13.1.8 does not display translucent bonds when only bonds are translucent JavaScript: flat cartoons for WebGL using mesh JavaScript: adds XML model file readers -- tested: VASP, XODYDATA, CML, Chem3D, MolPro, XSD code: refactoring for JavaScript popup/modelkit menus code: GT optimization, refactoring code: Naga sockets upgrade to Naga-3_0. (MolecularPlayground and jsonKiosk) ============================================================================= version="13.1.10" FEATURE CHANGE: set perspectiveMode removed -- nonlinear version 10 perspective mode no longer supported bug fix: !quit was not stopping animation and vibration bug fix: slowed zoomTo in Java version of 13.1.9 bug fix: PDB occupancies for first atoms may be 0.0 instead of 1.0 (broken in 11.7) bug fix: select *W does not work bug fix: setEllipsoid... options not implemented for nonthermal ellipsoids in 13.0 or 13.1 bug fix: nonthermal ellipsoids broken in 13.1. JavaScript: !quit and navigation enabled JavaScript: script queue enabled JavaScript: move thread implemented; needs navigation threads code: JmolApplet0_Navigate.jar and JmolApplet0_Parallel.jar added code: Navigator separated from TransformManager11 code: TransformManager10 removed code: TransformManager11 combined with TransformManager ============================================================================= version=13.1.9 new feature: MO or (ISOSURFACE MO) DENSITY -- electron density -- same as MO [1] SQUARED new feature: MO HOMO|LUMO|NEXT|PREV|[c1 n2 c2 n2...] SQUARED -- Squares wave functions as it combines them. -- That is, displays the collective electron density (if occupied) -- if [...] is not given, groups orbitals by energy -- examples: load c6h6.smol;mo homo squared // displays symmetric squared sum of two degenerate orbitals load co2.smol; mo homo squared // displays cylindrical electron density mo next squared // lumo, provided homo was just displayed bug fix: Molden reader tweaks bug fix: Jmol application toolbar picking tool should not select none bug fix: ellipsoid rendering fails bug fix: translucent echo oddities in Jmol 13.1.8 bug fix: lost volume rendering in 13.1.8 bug fix: CASTEP density reader fails to reset origin to 0 0 0 in mapping bug fix: UTF files with BOM (byte order marker) present not read correctly bug fix: UTF files within GZIP or ZIP files not read correctly bug fix: set picking draw no longer works in Jmol 13.0 or 13.1 bug fix: translucent echo backgrounds lost in 13.1.8 bug fix: select resno=@{n+3} fails in 12.2, 13.0, and 13.1 bug fix: isosurface AtomicOrbital broken in 13.1.8 JavaScript: removing ambiguity in AtomObject in setColix(short, int, int) and (int, short, int) JavaScript: binary Spartan SMOL reader enabled - nice IEEE calculator: http://www.merlyn.demon.co.uk/js-exact.htm#DW4 JavaScript: delay, hover, animation, vibration, moveto, spin, timeout JavaScript: full binary loading for JavaScript -- tested only in Firefox, but specifically designed for Chrome's insistence that synchronized AJAX processes must not be binary JavaScript: base64 translation of encoded binary strings from JS file reading prefix: ";base64," initiates decoding. JavaScript: com.json JSON package removed due to licensing issues JavaScript: JSmol -- all references to InputStream.read(byte[]) --> InputStream.read(byte[], 0, len) to speed file reading processing JavaScript: JSmol -- float[].clone(), int[].clone() not supported in Java2Script JavaScript: java.text.DateFormat not supported in Java2Script JavaScript: Note -- org.jmol.adapter.smarter.Atom is not fully cloned (anisoBorU and ellipsoid are not copied and their values must be considered "final") code: adding quotes to above properties allows them to be used in JavaScript; j2sNative in JmolConstants.java code: refactoring org.jmol.util into org.jmol.io and org.jmol.io2 ============================================================================= version=13.1.8 new feature: much better text rendering using 3-bit translucency bug fix: boundbox $pmeshID, center $pmeshID, and zoomto $pmeshID not implemented bug fix: stronger (bold) frame labels bug fix: no automatic change to bold for antialiasDisplay or PovRAY bug fix: try/catch not working when embedded in another context bug fix: JmolData not producing output for PRINT commands bug fix: JmolData setting haveDisplay true, then failing to get mouse manager bug fix: MRC file reader not setting default cutoff correctly bug fix: (13.1 only) MRC/DNS6 file readers fail bug fix: MRC surface file reader with symmetry error bug fix: (13.1 only) minimization broken code: clearing font cache upon zap. code: HTML5-only JavaScript full text working code: HTML5-only JavaScript version working ============================================================================= version=13.1.7 FEATURE CHANGE: getProperty isosurfaceInfo no longer returns vertex data new feature: getProperty isosurfaceData returns vertex data new feature: set cartoonFancy -- creates elliptical ribbon for cartoons -- if ribbonAspectRatio is its default value of 16, it is reset to 4 while cartoonFancy = true. bug fix: (13.1 only) reading of states with select BONDS fails to select bonds broken in 13.1.6 bug fix: (13.1 only) centered/right-aligned text only aligned after first line bug fix: export WRL missing various objects requiring transformMatrixInv bug fix: export may be missing protein cartoon turn bug fix: set ribbonAspectRatio improperly widens ribbon bug fix: zShadePower should not be static (affecting all applets/Jmol application frames) bug fix: write OBJ xxx.obj not working (but write xxx.obj is fine) bug fix: cartoons (with hermiteLevel > 1) adjusted to have smooth normals between segments (Alexander Rose) also, hermiteLevel >= 6 now gives ellipse cross-section recommended settings: set hermiteLevel 6;set ribbonAspectRatio 4 bug fix: JmolControls.js had broken radio buttons bug fix: DRAW {x y z} "title" can fail in multimodel cases with translucency ============================================================================= version=13.1.6 new feature: showTiming new feature: CIF reader reads assembly information -- load =1vif.cif filter "ASSEMBLY 1" -- load =1vif.cif filter "ASSEMBLY 1;$A" # just label_asym_id A -- load =1vif.cif filter "ASSEMBLY 1;!$C" # just label_asym_id values not C new feature: LOAD "xxx.cif" APPEND "appendedData" @x -- specifically for CIF files, reads a CIF file, appending string in variable -- intentionally not documented. -- feature particularly for RCSB (John Westbrook), so, for example: Var x = load("test.txt") load "1vif-early.cif" append "appendedData" @x FILTER "assembly 1;$A" -- or in one line: load "1vif-early.cif" append "appendedData" @{load("test.txt")} FILTER "assembly 1;$A" -- where, perhaps, x = _pdbx_struct_assembly_gen.assembly_id 1 _pdbx_struct_assembly_gen.oper_expression 1,2,3,4 _pdbx_struct_assembly_gen.asym_id_list A,B,C # loop_ _pdbx_struct_oper_list.id _pdbx_struct_oper_list.symmetry_operation 1 x,y,z 2 y,x,-z+1 3 -x+1,-y+1,z 4 -y+1,-x+1,-z+1 # new feature: LOAD "xxx.cif" APPEND DATA "appendedData" .... end "appendedData" -- specifically for CIF files, reads a CIF file, appending string in lines of script -- intentionally not documented -- most important for saving the state: load "1vif-early.cif" append data "appendedData" _pdbx_struct_assembly_gen.assembly_id 1 _pdbx_struct_assembly_gen.oper_expression 1,2,3,4 _pdbx_struct_assembly_gen.asym_id_list A,B,C # loop_ _pdbx_struct_oper_list.id _pdbx_struct_oper_list.symmetry_operation 1 x,y,z 2 y,x,-z+1 3 -x+1,-y+1,z 4 -y+1,-x+1,-z+1 # end "appendedData" FILTER "assembly 1;$A" -- option reserved to allow different data names for different purposes -- not general yet -- specific to CIF reader. bug fix: PDB 4B2Q, with faulty (incomplete) REMARK 350 not read code: successfully refactored for JavaScript (see http://chemapps.stolaf.edu/jmol/jsmol-10-1/jsmol2.htm) -- note that all code development is done in Jmol, then Java src code is transferred to JSmol project -- adding: javax.util.BitSet javax.util.StringXBuilder -- streamlining: javax.vecmath... -- removed all references to StringBuffer -- StringXBuilder allows optimization of performance in JavaScript -- workaround for Java2Script compiler bug setting "char x;" to 0 -- Java2Script compiler is not distinguishing int[] from float[] when creating the array -- StringXBuilder takes care of adding ".0" to floats and doubles, but we need to be on the lookout for not places where we are constructing a string where the difference between an int and a float is significant. -- optimize class hierarchy return by cataloging classes as org_jmol_xxxx in addition to org.jmol.xxxx -- tie in graphics on JavaScript side -- add fonts -- add "billboard" objects such as labels, 3D echos, etc. -- add 2D echos -- ultimately write an asynchronous version of JSmol code: org.jmol.jvxl.readers classes accessed reflexively (for JavaScript optimization) code: JSmol classes incorporated into Jmol code -- org.jmol.awtjs, org.jmol.appletjs, org.jmol.exportjs code: refactored for JavaScript (mostly removing ambiguity in method names) ============================================================================= version=13.1.5 bug fix: CASTEP PHONON files not loading code: refactored for JavaScript ============================================================================= version=13.1.4 new feature: ISOSURFACE PLANE ... MAP ... LATTICE {i j k} [volume data] -- allows periodic volume data to be mapped to a plane based on a specified translational lattice -- for example: isosurface plane x=2 map LATTICE {1 2 2} "data.dat" new feature: POLYHEDRA {atom1} to {atoms_including_atom1} -- polyhedra with or without central atom, but with a reference atom bug fix: translate selected x ... bug bug fix: ISOSURFACE saving in state broken 7/30/12 in 13.0.RC3 bug fix: simple isosurface PLANE not saved in state bug fix: isosurface command with MAP from state when saved to state may fail bug fix: 13.1.2 offsets label positions incorrectly code: refactored for JavaScript ============================================================================= version=13.1.3 bug fix: 13.1.2 breaks loading of ZIP files bug fix: CUBE reader reading atom Z numbers as partial charge bug fix: 13.1.2 breaks LOAD ? ============================================================================= version=13.1.2 new feature: cache ADD "filename" -- adds a file into the memory cache as a set of bytes new feature: cache REMOVE "filename"|ALL -- removes a file from the cache new feature: show cache -- displays the cache as an array new feature: cache() function -- returns the cache as an associative array {filename: nBytes, filename: nbytes,...} new feature: write INLINE "xxxx" "filename" for example: write INLINE "testing" "myfile.txt" for example: write INLINE @{load("$caffeine")} "caffeine.mol" new feature: set defaultDropScript for drag-drop and File|Open bug fix: translate x 0 does not recenter the model in the window bug fix: PDB polymers of length 1 allow size to be set and appear {visible} but are not bug fix: OPEN dialog doesn't allow for no PDB cartoons. bug fix: open dialog for 1-residue PDB files does not show atoms. bug fix: pngj storage of Spartan directory zip files or Spartan directories cannot be read because the PNGJ files created do not contain the necessary files from the directory code: (JmolViewer) public void cacheFile(String fileName, byte[] bytes) -- allows a mechanism for applets or embedding apps to deliver file content as bytes -- for applets, first getPropertyAsJavaObject("Viewer") code: refactored for Java2Script due to inner class bug there. ============================================================================= version=13.0.1 APPLET: -- a new OOP JavaScript interface (Jmol-JSO) allowing nonJava options such as ChemDoodle and GLmol as well as JME/JSpecView connectivity -- JmolData full "headless" operation for server-side processing BIOPHYSICS: -- COMPARE command FILE READING: -- reading of JCAMP-DX files having structure/spectra assignment data using ##$MODELS and ##$PEAKS (see http://chemapps.stolaf.edu/jmol/jspecview) -- Gaussian log reading of Natural Transition Orbitals -- automatic PNGJ file caching for immensely faster loading of PNGJ files from remote servers FILE WRITING: -- write PNGJ files encapsulate all model file data into one PNG file -- write image 400 400 PNGJ "http://....." POSTs JMOL or IMAGE or structure to a server as application/octet-stream -- write MOL adds partial charge data as > <JMOL_PARTIAL_CHARGES> in SDF format -- multiple-scene PNGJ files allowing minimal or full data loading and scripted animations ISOSURFACES: -- isosurface caching -- isosurface MOVE [[...matrix4f...]] moves/rotates an isosurface (for the state) MINIMIZATION: -- MMFF94/UFF minimization and energy calculation MOLECULAR DATA: -- show CHEMICAL -- show NMR MOLECULAR PLAYGROUND: -- MolecularPlayground -- remote status and remote control SOLID-STATE PHYSICS: -- solid state physics support SPECTROSCOPY: -- integration of JSpecView into Jmol, including 2D spectral display and manipulation STRUCTURE SEARCHING: -- extended Jmol SMARTS searching -- PubChem search for name (which can be a CAS number), cid, or SMILES using ":" ============================================================================= version=13.0.RC7_dev bug fix: isosurface CAVITY not saved in state ============================================================================= version=13.0.RC6 bug fix: isosurface CAVITY not saved in state bug fix: Gaussian reader not reading "AO basis set in the form of general basis input" properly ("Gen" keyword) bug fix: Gaussian reader not reading "7D 0" correctly bug fix: Trajectories still broken for PDB files code: all import foo.*; removed, specified ============================================================================= version=13.0.RC5 bug fix: broke trajectories in 13.0.RC4 ============================================================================= version=13.0.RC4 new feature: write SCENE PNG|PNGJ "xxxx.spt" option to create PNG or PNGJ files (same file, just different extension) new feature: "menu" as sole contents of a script pops up the context menu -- joins category of special commands, including "exit" "pause" and "quit" bug fix: load append TRAJECTORY (upper case) fails bug fix: load append trajectory "$mannose" fails (loads two models) bug fix: load trajectory "maleic.cif" fails with cryptic error message (not appropriate for trajectory loading) bug fix: undocumented and inaccurate CALCULATE VOLUME removed ============================================================================= version=13.0.RC3 new feature: automatic PNGJ file caching for immensely faster loading new feature: write MOL adds partial charge data as > <JMOL_PARTIAL_CHARGES> in SDF format new feature: isosurface CACHE <surface creation parameters> .... -- parameter CACHE along with isosurface creation or alone instructs Jmol to immediately create JVXL data for the specified surface and to load that data instead. The surface remains in memory (in this version of Jmol) can can be used again using cache://isosurface_<ID> where <ID> is the isosurface ID such as "isosurface1". -- The command ISOSURFACE CACHE alone will cache the current isosurface -- If the cache is no longer needed, then RESET CACHE will release the memory used to hold the JVXL data for the isosurface -- The result should be essentially equivalent to the original command. (It is recommended that the original be a relatively simple command, because not all nuances of an isosurface may be stored in the JVXL data.) -- THIS OPTION IS NOT COMPATIBLE WITH SAVING THE STATE AS AN SPT FILE. -- Instead, one needs to save the state in PNGJ or JMOL format, where the cached isosurface can be reloaded from a file saved in the PNGJ or JMOL zip directory bug fix: load a model, then load append TRAJECTORY -- will fail bug fix: load APPEND xxx where xxx is FILE, INLINE, SMILES, TRAJECTORY, MODEL all save incorrect LOAD command in state bug fix: shelx reader (.res) not assigning space group name or applying normalization ============================================================================= version=13.0.RC2 bug fix: isosurface molecular producing artifacts bug fix: isosurface select {...} molecular not excluding all other atoms for troughs new feature: Gaussian log reading of Natural Transition Orbitals new feature: isosurface MOVE [[...matrix4f...]] moves/rotates an isosurface (for the state) bug fix: isosurface moved by atom connection not saved correctly in state bug fix: isosurface SET n not read properly from JVXL file. ant fix: changing the way Jmol.properties is handled vis-a-vis # and underscores bug fix: isosurface SOLVENT producing artifacts --- needed minimum resolution bug fix: isosurface with selected set not delivering just those vertices for within distance calc bug fix: isosurface CONNECT in documentation but never implemented bug fix: isosurface SET n not saved in state or JVXL file. bug fix: Gaussian reader fails for 2-digit basis orbital names such as "12XX" bug fix: PNGJ creation not handling same-file or same-name issues. bug fix: isosurface SOLVENT produ
Source: README-13.3.6.properties, updated 2013-09-27