From: <ha...@us...> - 2011-10-04 11:51:21
|
Revision: 16243 http://jmol.svn.sourceforge.net/jmol/?rev=16243&view=rev Author: hansonr Date: 2011-10-04 11:51:14 +0000 (Tue, 04 Oct 2011) Log Message: ----------- version=12.2.1_dev # bug fix: Molden file reader error with [5D] flag before [GTO] Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/BasisFunctionReader.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/BasisFunctionReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/BasisFunctionReader.java 2011-10-04 11:48:53 UTC (rev 16242) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/BasisFunctionReader.java 2011-10-04 11:51:14 UTC (rev 16243) @@ -203,6 +203,8 @@ } protected void fixSlaterTypes(int typeOld, int typeNew) { + if (shells == null) + return; // in certain cases we assume Cartesian and then later have to // correct that. for (int i = shells.size(); --i >=0 ;) { Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-04 11:48:53 UTC (rev 16242) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-04 11:51:14 UTC (rev 16243) @@ -4,6 +4,7 @@ version=12.2.1_dev +# bug fix: Molden file reader error with [5D] flag before [GTO] # ------------------------------------------------------------------------------ # version=12.2.0 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-04 12:11:13
|
Revision: 16246 http://jmol.svn.sourceforge.net/jmol/?rev=16246&view=rev Author: hansonr Date: 2011-10-04 12:11:03 +0000 (Tue, 04 Oct 2011) Log Message: ----------- version=12.2.1_dev # bug fix: PDB reader not reading Rasmol-style files with multiple bonding # CONECT 1 2 2 # or # CONECT 1 2 # CONECT 1 2 # means for Rasmol double bond between atoms 1 and 2 Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/adapter/readers/cifpdb/PdbReader.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/cifpdb/PdbReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/cifpdb/PdbReader.java 2011-10-04 12:08:50 UTC (rev 16245) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/cifpdb/PdbReader.java 2011-10-04 12:11:03 UTC (rev 16246) @@ -753,6 +753,9 @@ } private StringBuffer sbConect; + private int sourceSerialLast = Integer.MIN_VALUE; + private int targetSerialLast = Integer.MIN_VALUE; + private void conect() { // adapted for improper non-crossreferenced files such as 1W7R if (sbConect == null) @@ -761,7 +764,6 @@ sourceSerial = parseInt(line, 6, 11); if (sourceSerial < 0) return; - int lastTarget = -1; for (int i = 0; i < 9; i += (i == 5 ? 2 : 1)) { int offset = i * 5 + 11; int offsetEnd = offset + 5; @@ -769,11 +771,11 @@ offsetEnd) : -1); if (targetSerial < 0) continue; + boolean isDoubleBond = (sourceSerial == sourceSerialLast && targetSerial == targetSerialLast); + sourceSerialLast = sourceSerial; + targetSerialLast = targetSerial; + boolean isSwapped = (targetSerial < sourceSerial); int i1; - boolean isDoubleBond = (targetSerial == lastTarget); - lastTarget = targetSerial; - - boolean isSwapped = (targetSerial < sourceSerial); if (isSwapped) { i1 = targetSerial; targetSerial = sourceSerial; Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-04 12:08:50 UTC (rev 16245) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-04 12:11:03 UTC (rev 16246) @@ -4,7 +4,15 @@ version=12.2.1_dev +# bug fix: PDB reader not reading Rasmol-style files with multiple bonding +# CONECT 1 2 2 +# or +# CONECT 1 2 +# CONECT 1 2 +# means for Rasmol double bond between atoms 1 and 2 + # bug fix: Molden file reader error with [5D] flag before [GTO] + # ------------------------------------------------------------------------------ # version=12.2.0 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-04 18:37:21
|
Revision: 16253 http://jmol.svn.sourceforge.net/jmol/?rev=16253&view=rev Author: hansonr Date: 2011-10-04 18:37:11 +0000 (Tue, 04 Oct 2011) Log Message: ----------- version=12.2.1_dev # CODE -- ?? Eclipse is refusing to set tabs to 2 spaces on this new project?? # bug fix: color isosurface {atomset} <color> does not work if isosurface has not already been mapped. Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/shapesurface/Isosurface.java branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceRenderer.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/shapesurface/Isosurface.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shapesurface/Isosurface.java 2011-10-04 18:34:01 UTC (rev 16252) +++ branches/v12_2/Jmol/src/org/jmol/shapesurface/Isosurface.java 2011-10-04 18:37:11 UTC (rev 16253) @@ -198,416 +198,435 @@ //private boolean allowContourLines; boolean allowMesh = true; - @SuppressWarnings("unchecked") - @Override - public void setProperty(String propertyName, Object value, BitSet bs) { + @SuppressWarnings("unchecked") + @Override + public void setProperty(String propertyName, Object value, BitSet bs) { - //System.out.println("isosurface testing " + propertyName + " " + value + (propertyName == "token" ? " " + Token.nameOf(((Integer)value).intValue()) : "")); + // System.out.println("isosurface testing " + propertyName + " " + value + // + (propertyName == "token" ? " " + + // Token.nameOf(((Integer)value).intValue()) : "")); - //isosurface-only (no calculation required; no calc parameters to set) + // isosurface-only (no calculation required; no calc parameters to set) - if ("navigate" == propertyName) { - navigate(((Integer) value).intValue()); - return; - } - if ("delete" == propertyName) { - setPropertySuper(propertyName, value, bs); - if (!explicitID) - nLCAO = nUnnamed = 0; - currentMesh = thisMesh = null; - return; - } + if ("navigate" == propertyName) { + navigate(((Integer) value).intValue()); + return; + } + if ("delete" == propertyName) { + setPropertySuper(propertyName, value, bs); + if (!explicitID) + nLCAO = nUnnamed = 0; + currentMesh = thisMesh = null; + return; + } - if ("remapColor" == propertyName) { - if (thisMesh != null) { - thisMesh.remapColors((ColorEncoder) value, translucentLevel); - } - return; - } + if ("remapColor" == propertyName) { + if (thisMesh != null) { + thisMesh.remapColors((ColorEncoder) value, translucentLevel); + } + return; + } - if ("thisID" == propertyName) { - if (actualID != null) - value = actualID; - setPropertySuper("thisID", value, null); - return; - } + if ("thisID" == propertyName) { + if (actualID != null) + value = actualID; + setPropertySuper("thisID", value, null); + return; + } - if ("atomcolor" == propertyName) { - if (thisMesh != null) { - thisMesh.colorAtoms(Graphics3D.getColix(value), bs); - } - return; - } + if ("atomcolor" == propertyName) { + if (thisMesh != null) { + if (thisMesh.vertexSource == null) { + short colix = (!thisMesh.isColorSolid ? 0 : thisMesh.colix); + setProperty("init", null, null); + setProperty("map", Boolean.FALSE, null); + setProperty("property", new float[viewer.getAtomCount()], + null); + if (colix != 0) { + thisMesh.colorCommand = "color isosurface " + + Graphics3D.getHexCode(colix); + setProperty("color", new Integer(Graphics3D + .getArgb(colix)), null); + } + } + thisMesh.colorAtoms(Graphics3D.getColix(value), bs); + } + return; + } - if ("pointSize" == propertyName) { - if (thisMesh != null) { - thisMesh.volumeRenderPointSize = ((Float) value).floatValue(); - } - return; - } + if ("pointSize" == propertyName) { + if (thisMesh != null) { + thisMesh.volumeRenderPointSize = ((Float) value).floatValue(); + } + return; + } - if ("vertexcolor" == propertyName) { - if (thisMesh != null) { - thisMesh.colorVertices(Graphics3D.getColix(value), bs); - } - return; - } + if ("vertexcolor" == propertyName) { + if (thisMesh != null) { + thisMesh.colorVertices(Graphics3D.getColix(value), bs); + } + return; + } - if ("color" == propertyName) { - if (thisMesh != null) { - // thisMesh.vertexColixes = null; - thisMesh.isColorSolid = true; - thisMesh.polygonColixes = null; - thisMesh.colorEncoder = null; - thisMesh.vertexColorMap = null; - } else if (!TextFormat.isWild(previousMeshID)) { - for (int i = meshCount; --i >= 0;) { - // isomeshes[i].vertexColixes = null; - isomeshes[i].isColorSolid = true; - isomeshes[i].polygonColixes = null; - isomeshes[i].colorEncoder = null; - isomeshes[i].vertexColorMap = null; - } - } - setPropertySuper(propertyName, value, bs); - return; - } + if ("color" == propertyName) { + if (thisMesh != null) { + // thisMesh.vertexColixes = null; + thisMesh.isColorSolid = true; + thisMesh.polygonColixes = null; + thisMesh.colorEncoder = null; + thisMesh.vertexColorMap = null; + } else if (!TextFormat.isWild(previousMeshID)) { + for (int i = meshCount; --i >= 0;) { + // isomeshes[i].vertexColixes = null; + isomeshes[i].isColorSolid = true; + isomeshes[i].polygonColixes = null; + isomeshes[i].colorEncoder = null; + isomeshes[i].vertexColorMap = null; + } + } + setPropertySuper(propertyName, value, bs); + return; + } - if ("nocontour" == propertyName) { - // recontouring - if (thisMesh != null) { - thisMesh.deleteContours(); - } - return; - } - if ("fixed" == propertyName) { - isFixed = ((Boolean) value).booleanValue(); - setMesh(); - return; - } + if ("nocontour" == propertyName) { + // recontouring + if (thisMesh != null) { + thisMesh.deleteContours(); + } + return; + } + if ("fixed" == propertyName) { + isFixed = ((Boolean) value).booleanValue(); + setMesh(); + return; + } - if ("newObject" == propertyName) { - if (thisMesh != null) - thisMesh.clear(thisMesh.meshType, false); - return; - } + if ("newObject" == propertyName) { + if (thisMesh != null) + thisMesh.clear(thisMesh.meshType, false); + return; + } - if ("refreshTrajectories" == propertyName) { - for (int i = meshCount; --i >= 0;) - if (meshes[i].connections != null - && meshes[i].modelIndex == ((Integer) ((Object[]) value)[0]) - .intValue()) - meshes[i].updateCoordinates((Matrix4f) ((Object[]) value)[2], - (BitSet) ((Object[]) value)[1]); - return; - } + if ("refreshTrajectories" == propertyName) { + for (int i = meshCount; --i >= 0;) + if (meshes[i].connections != null + && meshes[i].modelIndex == ((Integer) ((Object[]) value)[0]) + .intValue()) + meshes[i].updateCoordinates( + (Matrix4f) ((Object[]) value)[2], + (BitSet) ((Object[]) value)[1]); + return; + } - if ("modelIndex" == propertyName) { - if (!iHaveModelIndex) { - modelIndex = ((Integer) value).intValue(); - isFixed = (modelIndex < 0); - sg.setModelIndex(Math.abs(modelIndex)); - } - return; - } + if ("modelIndex" == propertyName) { + if (!iHaveModelIndex) { + modelIndex = ((Integer) value).intValue(); + isFixed = (modelIndex < 0); + sg.setModelIndex(Math.abs(modelIndex)); + } + return; + } - if ("lcaoCartoon" == propertyName || "lonePair" == propertyName - || "radical" == propertyName) { - // z x center rotationAxis (only one of x, y, or z is nonzero; in radians) - Vector3f[] info = (Vector3f[]) value; - if (!explicitID) { - setPropertySuper("thisID", null, null); - } - // center (info[2]) is set in SurfaceGenerator - if (!sg.setParameter("lcaoCartoonCenter", info[2])) - drawLcaoCartoon( - info[0], - info[1], - info[3], - ("lonePair" == propertyName ? 2 : "radical" == propertyName ? 1 : 0)); - return; - } + if ("lcaoCartoon" == propertyName || "lonePair" == propertyName + || "radical" == propertyName) { + // z x center rotationAxis (only one of x, y, or z is nonzero; in + // radians) + Vector3f[] info = (Vector3f[]) value; + if (!explicitID) { + setPropertySuper("thisID", null, null); + } + // center (info[2]) is set in SurfaceGenerator + if (!sg.setParameter("lcaoCartoonCenter", info[2])) + drawLcaoCartoon(info[0], info[1], info[3], + ("lonePair" == propertyName ? 2 + : "radical" == propertyName ? 1 : 0)); + return; + } - if ("select" == propertyName) { - if (iHaveBitSets) - return; - } + if ("select" == propertyName) { + if (iHaveBitSets) + return; + } - if ("ignore" == propertyName) { - if (iHaveBitSets) - return; - } + if ("ignore" == propertyName) { + if (iHaveBitSets) + return; + } - if ("meshcolor" == propertyName) { - int rgb = ((Integer) value).intValue(); - meshColix = Graphics3D.getColix(rgb); - if (thisMesh != null) - thisMesh.meshColix = meshColix; - return; - } + if ("meshcolor" == propertyName) { + int rgb = ((Integer) value).intValue(); + meshColix = Graphics3D.getColix(rgb); + if (thisMesh != null) + thisMesh.meshColix = meshColix; + return; + } - if ("offset" == propertyName) { - offset = new Point3f((Point3f) value); - if (offset.equals(JmolConstants.center)) - offset = null; - if (thisMesh != null) { - thisMesh.ptOffset = offset; - thisMesh.altVertices = null; - } - return; - } + if ("offset" == propertyName) { + offset = new Point3f((Point3f) value); + if (offset.equals(JmolConstants.center)) + offset = null; + if (thisMesh != null) { + thisMesh.ptOffset = offset; + thisMesh.altVertices = null; + } + return; + } - if ("rotate" == propertyName) { - Point4f pt4 = (Point4f) value; - if (thisMesh != null) { - if (pt4 == null || thisMesh.q == null) - thisMesh.q = new Quaternion(); - thisMesh.q = thisMesh.q.mul(new Quaternion(pt4)); - thisMesh.altVertices = null; - } - return; - } + if ("rotate" == propertyName) { + Point4f pt4 = (Point4f) value; + if (thisMesh != null) { + if (pt4 == null || thisMesh.q == null) + thisMesh.q = new Quaternion(); + thisMesh.q = thisMesh.q.mul(new Quaternion(pt4)); + thisMesh.altVertices = null; + } + return; + } - if ("bsDisplay" == propertyName) { - bsDisplay = (BitSet) value; - return; - } - if ("displayWithin" == propertyName) { - Object[] o = (Object[]) value; - displayWithinDistance2 = ((Float) o[0]).floatValue(); - isDisplayWithinNot = (displayWithinDistance2 < 0); - displayWithinDistance2 *= displayWithinDistance2; - displayWithinPoints = (List<Point3f>) o[3]; - if (displayWithinPoints.size() == 0) - displayWithinPoints = viewer.getAtomPointVector((BitSet) o[2]); - return; - } + if ("bsDisplay" == propertyName) { + bsDisplay = (BitSet) value; + return; + } + if ("displayWithin" == propertyName) { + Object[] o = (Object[]) value; + displayWithinDistance2 = ((Float) o[0]).floatValue(); + isDisplayWithinNot = (displayWithinDistance2 < 0); + displayWithinDistance2 *= displayWithinDistance2; + displayWithinPoints = (List<Point3f>) o[3]; + if (displayWithinPoints.size() == 0) + displayWithinPoints = viewer.getAtomPointVector((BitSet) o[2]); + return; + } - if ("finalize" == propertyName) { - if (thisMesh != null) { - String cmd = (String) value; - if (cmd != null && !cmd.startsWith("; isosurface map")) { - thisMesh.setDiscreteColixes(sg.getParams().contoursDiscrete, sg - .getParams().contourColixes); - setJvxlInfo(); - } - setScriptInfo(cmd); - } - clearSg(); - return; - } + if ("finalize" == propertyName) { + if (thisMesh != null) { + String cmd = (String) value; + if (cmd != null && !cmd.startsWith("; isosurface map")) { + thisMesh.setDiscreteColixes( + sg.getParams().contoursDiscrete, + sg.getParams().contourColixes); + setJvxlInfo(); + } + setScriptInfo(cmd); + } + clearSg(); + return; + } - if ("privateKey" == propertyName) { - this.privateKey = ((Double) value).doubleValue(); - return; - } + if ("privateKey" == propertyName) { + this.privateKey = ((Double) value).doubleValue(); + return; + } - if ("connections" == propertyName) { - if (currentMesh != null) - connections = currentMesh.connections = (int[]) value; - return; - } + if ("connections" == propertyName) { + if (currentMesh != null) + connections = currentMesh.connections = (int[]) value; + return; + } - if ("cutoffRange" == propertyName) { - cutoffRange = (float[]) value; - return; - } + if ("cutoffRange" == propertyName) { + cutoffRange = (float[]) value; + return; + } - // Isosurface / SurfaceGenerator both interested + // Isosurface / SurfaceGenerator both interested - if ("slab" == propertyName) { - if (value instanceof Integer) { - if (thisMesh != null) - thisMesh.jvxlData.slabValue = ((Integer) value).intValue(); - return; - } - if (thisMesh != null) { - Object[] slabInfo = (Object[]) value; - int tok = ((Integer) slabInfo[0]).intValue(); - switch (tok) { - case Token.mesh: - Object[] data = (Object[]) slabInfo[1]; - Mesh m = getMesh((String) data[1]); - if (m == null) - return; - data[1] = m; - break; - } - slabPolygons(slabInfo); - return; - } - } + if ("slab" == propertyName) { + if (value instanceof Integer) { + if (thisMesh != null) + thisMesh.jvxlData.slabValue = ((Integer) value).intValue(); + return; + } + if (thisMesh != null) { + Object[] slabInfo = (Object[]) value; + int tok = ((Integer) slabInfo[0]).intValue(); + switch (tok) { + case Token.mesh: + Object[] data = (Object[]) slabInfo[1]; + Mesh m = getMesh((String) data[1]); + if (m == null) + return; + data[1] = m; + break; + } + slabPolygons(slabInfo); + return; + } + } - if ("cap" == propertyName) { - // for lcaocartoons? - if (thisMesh != null && thisMesh.polygonCount != 0) { - thisMesh.slabPolygons((Object[]) value, true); - thisMesh.initialize(thisMesh.lighting, null, null); - return; - } - } - if ("map" == propertyName) { - setProperty("squareData", Boolean.FALSE, null); - if (thisMesh == null || thisMesh.vertexCount == 0) - return; - } + if ("cap" == propertyName) { + // for lcaocartoons? + if (thisMesh != null && thisMesh.polygonCount != 0) { + thisMesh.slabPolygons((Object[]) value, true); + thisMesh.initialize(thisMesh.lighting, null, null); + return; + } + } + if ("map" == propertyName) { + setProperty("squareData", Boolean.FALSE, null); + if (thisMesh == null || thisMesh.vertexCount == 0) + return; + } - if ("deleteVdw" == propertyName) { - for (int i = meshCount; --i >= 0;) - if (isomeshes[i].bsVdw != null - && (bs == null || bs.intersects(isomeshes[i].bsVdw))) - deleteMesh(i); - currentMesh = thisMesh = null; - return; - } - if ("mapColor" == propertyName || "readFile" == propertyName) { - if (value == null) { - // ScriptEvaluator has passed the filename to us as the value of the - // "fileName" property. We retrieve that from the surfaceGenerator - // and open a BufferedReader for it. Or not. But that would be - // unlikely since we have just checked it in ScriptEvaluator - value = viewer.getBufferedReaderOrErrorMessageFromName( - sg.getFileName(), null, true); - if (value instanceof String) { - Logger.error("Isosurface: could not open file " + sg.getFileName() - + " -- " + value); - return; - } - try { - value = new BufferedReader(new InputStreamReader((InputStream) value, - "ISO-8859-1")); - } catch (UnsupportedEncodingException e) { - // ignore - } - } - } else if ("atomIndex" == propertyName) { - atomIndex = ((Integer) value).intValue(); - } else if ("center" == propertyName) { - center.set((Point3f) value); - } else if ("colorRGB" == propertyName) { - int rgb = ((Integer) value).intValue(); - defaultColix = Graphics3D.getColix(rgb); - } else if ("contour" == propertyName) { - explicitContours = true; - } else if ("functionXY" == propertyName) { - //allowContourLines = false; - if (sg.isStateDataRead()) - setScriptInfo(null); // for script DATA1 - } else if ("init" == propertyName) { - newSg(); - } else if ("getSurfaceSets" == propertyName) { - if (thisMesh != null) { - thisMesh.thisSet = ((Integer) value).intValue(); - thisMesh.calculatedVolume = null; - thisMesh.calculatedArea = null; - } - } else if ("localName" == propertyName) { - value = viewer.getOutputStream((String) value, null); - propertyName = "outputStream"; - } else if ("molecularOrbital" == propertyName) { - if (value instanceof Integer) { - moNumber = ((Integer) value).intValue(); - moLinearCombination = null; - } else { - moLinearCombination = (float[]) value; - moNumber = 0; - } - if (!isColorExplicit) - isPhaseColored = true; - } else if ("phase" == propertyName) { - isPhaseColored = true; - } else if ("plane" == propertyName) { - //allowContourLines = false; - } else if ("pocket" == propertyName) { - // Boolean pocket = (Boolean) value; - // lighting = (pocket.booleanValue() ? JmolConstants.FULLYLIT - // : JmolConstants.FRONTLIT); - } else if ("scale3d" == propertyName) { - scale3d = ((Float) value).floatValue(); - if (thisMesh != null) { - thisMesh.scale3d = thisMesh.jvxlData.scale3d = scale3d; - thisMesh.altVertices = null; - } - } else if ("title" == propertyName) { - if (value instanceof String && "-".equals(value)) - value = null; - setPropertySuper(propertyName, value, bs); - value = title; - } else if ("withinPoints" == propertyName) { - Object[] o = (Object[]) value; - withinDistance2 = ((Float) o[0]).floatValue(); - isWithinNot = (withinDistance2 < 0); - withinDistance2 *= withinDistance2; - withinPoints = (List<Point3f>) o[3]; - if (withinPoints.size() == 0) - withinPoints = viewer.getAtomPointVector((BitSet) o[2]); - } else if (("nci" == propertyName || "orbital" == propertyName) - && sg != null) { - sg.getParams().testFlags = (viewer.getTestFlag(2) ? 2 : 0); - } + if ("deleteVdw" == propertyName) { + for (int i = meshCount; --i >= 0;) + if (isomeshes[i].bsVdw != null + && (bs == null || bs.intersects(isomeshes[i].bsVdw))) + deleteMesh(i); + currentMesh = thisMesh = null; + return; + } + if ("mapColor" == propertyName || "readFile" == propertyName) { + if (value == null) { + // ScriptEvaluator has passed the filename to us as the value of + // the + // "fileName" property. We retrieve that from the + // surfaceGenerator + // and open a BufferedReader for it. Or not. But that would be + // unlikely since we have just checked it in ScriptEvaluator + value = viewer.getBufferedReaderOrErrorMessageFromName(sg + .getFileName(), null, true); + if (value instanceof String) { + Logger.error("Isosurface: could not open file " + + sg.getFileName() + " -- " + value); + return; + } + try { + value = new BufferedReader(new InputStreamReader( + (InputStream) value, "ISO-8859-1")); + } catch (UnsupportedEncodingException e) { + // ignore + } + } + } else if ("atomIndex" == propertyName) { + atomIndex = ((Integer) value).intValue(); + } else if ("center" == propertyName) { + center.set((Point3f) value); + } else if ("colorRGB" == propertyName) { + int rgb = ((Integer) value).intValue(); + defaultColix = Graphics3D.getColix(rgb); + } else if ("contour" == propertyName) { + explicitContours = true; + } else if ("functionXY" == propertyName) { + // allowContourLines = false; + if (sg.isStateDataRead()) + setScriptInfo(null); // for script DATA1 + } else if ("init" == propertyName) { + newSg(); + } else if ("getSurfaceSets" == propertyName) { + if (thisMesh != null) { + thisMesh.thisSet = ((Integer) value).intValue(); + thisMesh.calculatedVolume = null; + thisMesh.calculatedArea = null; + } + } else if ("localName" == propertyName) { + value = viewer.getOutputStream((String) value, null); + propertyName = "outputStream"; + } else if ("molecularOrbital" == propertyName) { + if (value instanceof Integer) { + moNumber = ((Integer) value).intValue(); + moLinearCombination = null; + } else { + moLinearCombination = (float[]) value; + moNumber = 0; + } + if (!isColorExplicit) + isPhaseColored = true; + } else if ("phase" == propertyName) { + isPhaseColored = true; + } else if ("plane" == propertyName) { + // allowContourLines = false; + } else if ("pocket" == propertyName) { + // Boolean pocket = (Boolean) value; + // lighting = (pocket.booleanValue() ? JmolConstants.FULLYLIT + // : JmolConstants.FRONTLIT); + } else if ("scale3d" == propertyName) { + scale3d = ((Float) value).floatValue(); + if (thisMesh != null) { + thisMesh.scale3d = thisMesh.jvxlData.scale3d = scale3d; + thisMesh.altVertices = null; + } + } else if ("title" == propertyName) { + if (value instanceof String && "-".equals(value)) + value = null; + setPropertySuper(propertyName, value, bs); + value = title; + } else if ("withinPoints" == propertyName) { + Object[] o = (Object[]) value; + withinDistance2 = ((Float) o[0]).floatValue(); + isWithinNot = (withinDistance2 < 0); + withinDistance2 *= withinDistance2; + withinPoints = (List<Point3f>) o[3]; + if (withinPoints.size() == 0) + withinPoints = viewer.getAtomPointVector((BitSet) o[2]); + } else if (("nci" == propertyName || "orbital" == propertyName) + && sg != null) { + sg.getParams().testFlags = (viewer.getTestFlag(2) ? 2 : 0); + } - // surface Export3D only (return TRUE) or shared (return FALSE) + // surface Export3D only (return TRUE) or shared (return FALSE) - if (sg != null && sg.setParameter(propertyName, value, bs)) { - if (sg.isValid()) - return; - propertyName = "delete"; - } + if (sg != null && sg.setParameter(propertyName, value, bs)) { + if (sg.isValid()) + return; + propertyName = "delete"; + } - // ///////////// isosurface LAST, shared + // ///////////// isosurface LAST, shared - if ("init" == propertyName) { - explicitID = false; - scriptAppendix = ""; - String script = (value instanceof String ? (String) value : null); - int pt = (script == null ? -1 : script.indexOf("# ID=")); - actualID = (pt >= 0 ? Parser.getNextQuotedString(script, pt) : null); - setPropertySuper("thisID", MeshCollection.PREVIOUS_MESH_ID, null); - if (script != null && !(iHaveBitSets = getScriptBitSets(script, null))) - sg.setParameter("select", bs); - initializeIsosurface(); - sg.setModelIndex(isFixed ? -1 : modelIndex); - return; - } + if ("init" == propertyName) { + explicitID = false; + scriptAppendix = ""; + String script = (value instanceof String ? (String) value : null); + int pt = (script == null ? -1 : script.indexOf("# ID=")); + actualID = (pt >= 0 ? Parser.getNextQuotedString(script, pt) : null); + setPropertySuper("thisID", MeshCollection.PREVIOUS_MESH_ID, null); + if (script != null + && !(iHaveBitSets = getScriptBitSets(script, null))) + sg.setParameter("select", bs); + initializeIsosurface(); + sg.setModelIndex(isFixed ? -1 : modelIndex); + return; + } - if ("clear" == propertyName) { - discardTempData(true); - return; - } + if ("clear" == propertyName) { + discardTempData(true); + return; + } - /* - * if ("background" == propertyName) { boolean doHide = !((Boolean) - * value).booleanValue(); if (thisMesh != null) thisMesh.hideBackground = - * doHide; else { for (int i = meshCount; --i >= 0;) - * meshes[i].hideBackground = doHide; } return; } - */ + /* + * if ("background" == propertyName) { boolean doHide = !((Boolean) + * value).booleanValue(); if (thisMesh != null) thisMesh.hideBackground + * = doHide; else { for (int i = meshCount; --i >= 0;) + * meshes[i].hideBackground = doHide; } return; } + */ - if (propertyName == "deleteModelAtoms") { - int modelIndex = ((int[]) ((Object[]) value)[2])[0]; - int firstAtomDeleted = ((int[]) ((Object[]) value)[2])[1]; - int nAtomsDeleted = ((int[]) ((Object[]) value)[2])[2]; - for (int i = meshCount; --i >= 0;) { - Mesh m = meshes[i]; - if (m == null) - continue; - if (m.modelIndex == modelIndex) { - meshCount--; - if (m == currentMesh) - currentMesh = thisMesh = null; - meshes = isomeshes = (IsosurfaceMesh[]) ArrayUtil.deleteElements( - meshes, i, 1); - } else if (m.modelIndex > modelIndex) { - m.modelIndex--; - if (m.atomIndex >= firstAtomDeleted) - m.atomIndex -= nAtomsDeleted; - } - } - return; - } + if (propertyName == "deleteModelAtoms") { + int modelIndex = ((int[]) ((Object[]) value)[2])[0]; + int firstAtomDeleted = ((int[]) ((Object[]) value)[2])[1]; + int nAtomsDeleted = ((int[]) ((Object[]) value)[2])[2]; + for (int i = meshCount; --i >= 0;) { + Mesh m = meshes[i]; + if (m == null) + continue; + if (m.modelIndex == modelIndex) { + meshCount--; + if (m == currentMesh) + currentMesh = thisMesh = null; + meshes = isomeshes = (IsosurfaceMesh[]) ArrayUtil + .deleteElements(meshes, i, 1); + } else if (m.modelIndex > modelIndex) { + m.modelIndex--; + if (m.atomIndex >= firstAtomDeleted) + m.atomIndex -= nAtomsDeleted; + } + } + return; + } - // processing by meshCollection: - setPropertySuper(propertyName, value, bs); - } + // processing by meshCollection: + setPropertySuper(propertyName, value, bs); + } protected void slabPolygons(Object[] slabInfo) { thisMesh.slabPolygons(slabInfo, false); Modified: branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceRenderer.java 2011-10-04 18:34:01 UTC (rev 16252) +++ branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceRenderer.java 2011-10-04 18:37:11 UTC (rev 16253) @@ -73,7 +73,7 @@ imesh = (IsosurfaceMesh) isosurface.meshes[i]; hasColorRange = false; if (renderMesh(mySlabValue, slabValue)) { - System.out.println("render isossurface " + i + " " + isosurface.meshCount); + //System.out.println("render isossurface " + i + " " + isosurface.meshCount); if (!isExport) renderInfo(); if (isExport && haveBsSlabGhost) { Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-04 18:34:01 UTC (rev 16252) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-04 18:37:11 UTC (rev 16253) @@ -4,6 +4,9 @@ version=12.2.1_dev +# CODE -- ?? Eclipse is refusing to set tabs to 2 spaces on this new project?? + +# bug fix: color isosurface {atomset} <color> does not work if isosurface has not already been mapped. # bug fix: PDB reader not reading Rasmol-style files with multiple bonding # CONECT 1 2 2 # or This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-06 16:00:04
|
Revision: 16274 http://jmol.svn.sourceforge.net/jmol/?rev=16274&view=rev Author: hansonr Date: 2011-10-06 15:59:58 +0000 (Thu, 06 Oct 2011) Log Message: ----------- version=12.2.1 # bug fix: Molden reader does not read angstrom units Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java 2011-10-06 15:58:31 UTC (rev 16273) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java 2011-10-06 15:59:58 UTC (rev 16274) @@ -87,7 +87,7 @@ int nPrevAtom = 0, nCurAtom = 0; - boolean isAU = (coordUnit.indexOf("Angs") < 0); + boolean isAU = (coordUnit.indexOf("ANGS") < 0); if (isAU && coordUnit.indexOf("AU") < 0) { throw new Exception("invalid coordinate unit " + coordUnit + " in [Atoms]"); } Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-06 15:58:31 UTC (rev 16273) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-06 15:59:58 UTC (rev 16274) @@ -4,6 +4,7 @@ version=12.2.1 +# bug fix: Molden reader does not read angstrom units # bug fix: color isosurface {atomset} <color> does not work if isosurface has not already been mapped. # bug fix: PDB reader not reading Rasmol-style files with multiple bonding # CONECT 1 2 2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-06 18:46:57
|
Revision: 16275 http://jmol.svn.sourceforge.net/jmol/?rev=16275&view=rev Author: hansonr Date: 2011-10-06 18:46:50 +0000 (Thu, 06 Oct 2011) Log Message: ----------- version=12.2.1 # bug fix: Molden reader does not read "Sym=X" (missing space after '=') Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java 2011-10-06 15:59:58 UTC (rev 16274) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java 2011-10-06 18:46:50 UTC (rev 16275) @@ -218,7 +218,7 @@ // see BasisFunctionReader // TODO no check here for G orbitals - String[] tokens = getTokens(); + String[] tokens = getTokens(line.replace('=',' ')); while (tokens != null && tokens[0].indexOf('[') < 0) { Map<String, Object> mo = new Hashtable<String, Object>(); List<String> data = new ArrayList<String>(); @@ -226,7 +226,7 @@ float occupancy = Float.NaN; String symmetry = null; String key; - while (tokens != null && parseInt(key = tokens[0]) == Integer.MIN_VALUE) { + while (parseInt(key = tokens[0]) == Integer.MIN_VALUE) { if (key.startsWith("Ene")) { energy = parseFloat(tokens[1]); } else if (key.startsWith("Occup")) { @@ -236,12 +236,8 @@ } else if (key.startsWith("Spin")) { alphaBeta = tokens[1].toLowerCase(); } - tokens = getTokens(readLine()); - } - - if (tokens == null) - throw new Exception("error reading MOs: unexpected EOF reading coeffs"); - + tokens = getTokens(readLine().replace('=',' ')); + } while (tokens != null && parseInt(tokens[0]) != Integer.MIN_VALUE) { if (tokens.length != 2) throw new Exception("invalid MO coefficient specification"); Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-06 15:59:58 UTC (rev 16274) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-06 18:46:50 UTC (rev 16275) @@ -4,6 +4,7 @@ version=12.2.1 +# bug fix: Molden reader does not read "Sym=X" (missing space after '=') # bug fix: Molden reader does not read angstrom units # bug fix: color isosurface {atomset} <color> does not work if isosurface has not already been mapped. # bug fix: PDB reader not reading Rasmol-style files with multiple bonding This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-08 15:37:36
|
Revision: 16289 http://jmol.svn.sourceforge.net/jmol/?rev=16289&view=rev Author: hansonr Date: 2011-10-08 15:37:30 +0000 (Sat, 08 Oct 2011) Log Message: ----------- Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java branches/v12_2/Jmol/src/org/jmol/applet/Jmol.java Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java 2011-10-08 14:18:54 UTC (rev 16288) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MoldenReader.java 2011-10-08 15:37:30 UTC (rev 16289) @@ -37,8 +37,6 @@ loadGeometries = !vibOnly && desiredVibrationNumber < 0 && !checkFilter("NOOPT"); loadVibrations = !optOnly && desiredModelNumber < 0 && !checkFilter("NOVIB"); - if (checkFilter("NORMALIZED")) - moData.put("isNormalized", Boolean.TRUE); if (checkFilter("ALPHA")) filter = "alpha"; else if (checkFilter("BETA")) Modified: branches/v12_2/Jmol/src/org/jmol/applet/Jmol.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/applet/Jmol.java 2011-10-08 14:18:54 UTC (rev 16288) +++ branches/v12_2/Jmol/src/org/jmol/applet/Jmol.java 2011-10-08 15:37:30 UTC (rev 16289) @@ -24,9 +24,7 @@ package org.jmol.applet; -import org.jmol.api.Interface; import org.jmol.api.JmolCallbackListener; -import org.jmol.api.JmolPromptInterface; import org.jmol.api.JmolStatusListener; import org.jmol.api.JmolViewer; import org.jmol.constant.EnumCallback; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-11 20:27:46
|
Revision: 16326 http://jmol.svn.sourceforge.net/jmol/?rev=16326&view=rev Author: hansonr Date: 2011-10-11 20:27:39 +0000 (Tue, 11 Oct 2011) Log Message: ----------- version=12.2.1 # bug fix: select PROTEIN selects non-PDB atoms # bug fix: Molden reader does not read "Sym=X" (missing space after '=') # bug fix: Molden reader does not read angstrom units # bug fix: color isosurface {atomset} <color> does not work if isosurface has not already been mapped. # bug fix: PDB reader not reading Rasmol-style files with multiple bonding # CONECT 1 2 2 # or # CONECT 1 2 # CONECT 1 2 # means for Rasmol double bond between atoms 1 and 2 # bug fix: Molden file reader error with [5D] flag before [GTO] Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/modelset/Group.java branches/v12_2/Jmol/src/org/jmol/modelsetbio/Monomer.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/modelset/Group.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/modelset/Group.java 2011-10-11 14:08:49 UTC (rev 16325) +++ branches/v12_2/Jmol/src/org/jmol/modelset/Group.java 2011-10-11 20:27:39 UTC (rev 16326) @@ -55,7 +55,7 @@ protected Chain chain; int seqcode; protected short groupID; - protected boolean isAmino; + protected boolean isProtein; int selectedIndex; public int firstAtomIndex = -1; public int leadAtomIndex = -1; @@ -132,7 +132,7 @@ if (group3 == null) group3 = ""; groupID = getGroupID(group3); - isAmino = (groupID >= 1 && groupID < JmolConstants.GROUPID_AMINO_MAX); + isProtein = (groupID >= 1 && groupID < JmolConstants.GROUPID_AMINO_MAX); this.firstAtomIndex = firstAtomIndex; this.lastAtomIndex = lastAtomIndex; @@ -216,7 +216,7 @@ } public boolean isProtein() { - return (groupID < JmolConstants.GROUPID_AMINO_MAX); + return isProtein; } public boolean isNucleic() { Modified: branches/v12_2/Jmol/src/org/jmol/modelsetbio/Monomer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/modelsetbio/Monomer.java 2011-10-11 14:08:49 UTC (rev 16325) +++ branches/v12_2/Jmol/src/org/jmol/modelsetbio/Monomer.java 2011-10-11 20:27:39 UTC (rev 16326) @@ -144,12 +144,6 @@ //////////////////////////////////////////////////////////////// - @Override - public boolean isProtein() { - return isAmino; - } - //////////////////////////////////////////////////////////////// - /** * @param proteinstructure * Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-11 14:08:49 UTC (rev 16325) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-11 20:27:39 UTC (rev 16326) @@ -4,6 +4,7 @@ version=12.2.1 +# bug fix: select PROTEIN selects non-PDB atoms # bug fix: Molden reader does not read "Sym=X" (missing space after '=') # bug fix: Molden reader does not read angstrom units # bug fix: color isosurface {atomset} <color> does not work if isosurface has not already been mapped. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-13 13:47:29
|
Revision: 16347 http://jmol.svn.sourceforge.net/jmol/?rev=16347&view=rev Author: hansonr Date: 2011-10-13 13:47:18 +0000 (Thu, 13 Oct 2011) Log Message: ----------- popup code changes Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/modelkit/ModelKit.java branches/v12_2/Jmol/src/org/jmol/popup/JmolPopup.java branches/v12_2/Jmol/src/org/jmol/popup/SimplePopup.java Modified: branches/v12_2/Jmol/src/org/jmol/modelkit/ModelKit.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/modelkit/ModelKit.java 2011-10-13 13:45:17 UTC (rev 16346) +++ branches/v12_2/Jmol/src/org/jmol/modelkit/ModelKit.java 2011-10-13 13:47:18 UTC (rev 16347) @@ -81,6 +81,6 @@ * @see org.jmol.modelkit.JmolModelKitInterface#show(int, int, java.lang.String) */ public void show(int x, int y, char type) { - modelkitMenu.show(x, y); + modelkitMenu.show(x, y, true); } } Modified: branches/v12_2/Jmol/src/org/jmol/popup/JmolPopup.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/popup/JmolPopup.java 2011-10-13 13:45:17 UTC (rev 16346) +++ branches/v12_2/Jmol/src/org/jmol/popup/JmolPopup.java 2011-10-13 13:47:18 UTC (rev 16347) @@ -114,7 +114,6 @@ public void updateComputedMenus() { updateMode = UPDATE_ALL; getViewerData(); - //System.out.println("jmolPopup updateComputedMenus " + modelSetFileName + " " + modelSetName + " " + atomCount); updateSelectMenu(); updateFileMenu(); updateElementsComputedMenu(viewer.getElementsPresentBitSet(modelIndex)); @@ -663,9 +662,8 @@ updateAboutSubmenu(); } - @Override public void show(int x, int y) { - super.show(x, y, false); + show(x, y, false); if (x < 0) { getViewerData(); setFrankMenu(currentMenuItemId); @@ -677,7 +675,7 @@ } } restorePopupMenu(); - if (asPopup) + if (asPopup && thisx >= 0) showPopupMenu(thisx, thisy); } Modified: branches/v12_2/Jmol/src/org/jmol/popup/SimplePopup.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/popup/SimplePopup.java 2011-10-13 13:45:17 UTC (rev 16346) +++ branches/v12_2/Jmol/src/org/jmol/popup/SimplePopup.java 2011-10-13 13:47:18 UTC (rev 16347) @@ -149,10 +149,6 @@ protected int thisx, thisy; - public void show(int x, int y) { - show(x, y, true); - } - protected void updateForShow() { // depends upon implementation } @@ -173,7 +169,8 @@ boolean b = viewer.getBooleanProperty(basename); setCheckBoxState(item, b); } - showPopupMenu(thisx, thisy); + if (doPopup) + showPopupMenu(thisx, thisy); } static protected void addCurrentItem(StringBuffer sb, char type, int level, String name, String label, String script, String flags) { @@ -497,7 +494,7 @@ if (script == null || script.length() == 0) return; if (script.equals("MAIN")) { - show(thisx, thisy); + show(thisx, thisy, true); return; } String id = getId(source); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-13 16:13:58
|
Revision: 16349 http://jmol.svn.sourceforge.net/jmol/?rev=16349&view=rev Author: hansonr Date: 2011-10-13 16:13:51 +0000 (Thu, 13 Oct 2011) Log Message: ----------- version=12.2.1 # bug fix: SMILES comparison when the number of stereocenters is not the same is wrong # new feature: compare("XXX","XXXX","ISOMER") comparison now includes "AMBIGUOUS STEREOCHEMISTRY!" # code: popup/modelkit refactoring to isolate awt/Swing references Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/smiles/SmilesMatcher.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/smiles/SmilesMatcher.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/smiles/SmilesMatcher.java 2011-10-13 13:52:53 UTC (rev 16348) +++ branches/v12_2/Jmol/src/org/jmol/smiles/SmilesMatcher.java 2011-10-13 16:13:51 UTC (rev 16349) @@ -195,12 +195,14 @@ return "none"; boolean check; // note: find smiles1 IN smiles2 here - check = (areEqual(smiles2, smiles1) > 0); + int n1 = countStereo(smiles1); + int n2 = countStereo(smiles2); + check = (n1 == n2 && areEqual(smiles2, smiles1) > 0); if (!check) { // MF matched, but didn't match SMILES String s = smiles1 + smiles2; if (s.indexOf("/") >= 0 || s.indexOf("\\") >= 0 || s.indexOf("@") >= 0) { - if (smiles1.indexOf("@") >= 0 && smiles2.indexOf("@") >= 0) { + if (n1 == n2 && n1 > 0) { // reverse chirality centers smiles1 = reverseChirality(smiles1); check = (areEqual(smiles1, smiles2) > 0); @@ -210,7 +212,7 @@ // remove all stereochemistry from SMILES string check = (areEqual("/nostereo/" + smiles2, smiles1) > 0); if (check) - return "diastereomers"; + return (n1 == n2 ? "diastereomers" : "ambiguous stereochemistry!"); } // MF matches, but not enantiomers or diasteriomers return "constitutional isomers"; @@ -352,4 +354,15 @@ return null; } + private int countStereo(String s) { + s = TextFormat.simpleReplace(s, "@@","@"); + int i = s.lastIndexOf('@') + 1; + int n = 0; + for (; --i >= 0;) + if (s.charAt(i) == '@') + n++; + return n; + } + + } Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-13 13:52:53 UTC (rev 16348) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-13 16:13:51 UTC (rev 16349) @@ -4,6 +4,9 @@ version=12.2.1 +# bug fix: SMILES comparison when the number of stereocenters is not the same is wrong +# new feature: compare("XXX","XXXX","ISOMER") comparison now includes "AMBIGUOUS STEREOCHEMISTRY!" +# code: popup/modelkit refactoring to isolate awt/Swing references # bug fix: connection deletion removes all measurements -- can't imagine why... # bug fix: H2,H3 connected to terminal N of protein not backbone # bug fix: select PROTEIN selects non-PDB atoms This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-14 20:22:51
|
Revision: 16355 http://jmol.svn.sourceforge.net/jmol/?rev=16355&view=rev Author: hansonr Date: 2011-10-14 20:22:44 +0000 (Fri, 14 Oct 2011) Log Message: ----------- version=12.2.2_dev # bug fix: script javascript:xxxx() broken Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/script/ScriptCompiler.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/script/ScriptCompiler.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/script/ScriptCompiler.java 2011-10-14 16:28:38 UTC (rev 16354) +++ branches/v12_2/Jmol/src/org/jmol/script/ScriptCompiler.java 2011-10-14 20:22:44 UTC (rev 16355) @@ -1042,6 +1042,10 @@ case Token.getproperty: if (!iHaveQuotedString && lookingAtImpliedString(false, false)) { String str = script.substring(ichToken, ichToken + cchToken); + if (tokCommand == Token.script && str.startsWith("javascript:")) { + lookingAtImpliedString(true, true); + str = script.substring(ichToken, ichToken + cchToken); + } addTokenToPrefix(new Token(Token.string, str)); iHaveQuotedString = true; return CONTINUE; Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-14 16:28:38 UTC (rev 16354) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-14 20:22:44 UTC (rev 16355) @@ -4,6 +4,7 @@ version=12.2.2_dev +# bug fix: script javascript:xxxx() broken # ------------------------------------------------------------------------------ #version=12.2.1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-16 14:59:10
|
Revision: 16360 http://jmol.svn.sourceforge.net/jmol/?rev=16360&view=rev Author: hansonr Date: 2011-10-16 14:59:03 +0000 (Sun, 16 Oct 2011) Log Message: ----------- version=12.2.2_dev # bug fix: POV-Ray export of cartoons broken Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/shape/BbcageRenderer.java branches/v12_2/Jmol/src/org/jmol/shape/EchoRenderer.java branches/v12_2/Jmol/src/org/jmol/shape/FrankRenderer.java branches/v12_2/Jmol/src/org/jmol/shape/LabelsRenderer.java branches/v12_2/Jmol/src/org/jmol/shape/MeasuresRenderer.java branches/v12_2/Jmol/src/org/jmol/shape/MeshRenderer.java branches/v12_2/Jmol/src/org/jmol/shape/ShapeRenderer.java branches/v12_2/Jmol/src/org/jmol/shape/SticksRenderer.java branches/v12_2/Jmol/src/org/jmol/shape/UccageRenderer.java branches/v12_2/Jmol/src/org/jmol/shapebio/BioShapeRenderer.java branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceRenderer.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/shape/BbcageRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shape/BbcageRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shape/BbcageRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -23,7 +23,6 @@ */ package org.jmol.shape; -import org.jmol.g3d.Graphics3D; import org.jmol.util.BoxInfo; import org.jmol.viewer.StateManager; @@ -38,7 +37,7 @@ protected void render() { Bbcage bbox = (Bbcage) shape; if (!bbox.isVisible - || exportType == Graphics3D.EXPORT_NOT && !g3d.checkTranslucent(false) + || !isExport && !g3d.checkTranslucent(false) || viewer.isJmolDataFrame()) return; colix = viewer.getObjectColix(StateManager.OBJ_BOUNDBOX); Modified: branches/v12_2/Jmol/src/org/jmol/shape/EchoRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shape/EchoRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shape/EchoRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -27,7 +27,6 @@ import javax.vecmath.Point3i; -import org.jmol.g3d.Graphics3D; import org.jmol.modelset.Atom; public class EchoRenderer extends ShapeRenderer { @@ -67,7 +66,7 @@ } private void renderFrameTitle(String frameTitle) { - if (exportType != Graphics3D.EXPORT_NOT || !g3d.setColix(viewer.getColixBackgroundContrast())) + if (isExport || !g3d.setColix(viewer.getColixBackgroundContrast())) return; byte fid = g3d.getFontFid("Monospaced", 14 * imageFontScaling); g3d.setFont(fid); Modified: branches/v12_2/Jmol/src/org/jmol/shape/FrankRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shape/FrankRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shape/FrankRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -38,7 +38,7 @@ boolean modelKitMode = viewer.isModelKitMode(); colix = (modelKitMode ? Graphics3D.MAGENTA : viewer.isSignedApplet() ? (allowKeys ? Graphics3D.ORANGE : Graphics3D.RED) : allowKeys ? Graphics3D.BLUE : Graphics3D.GRAY); - if (exportType != Graphics3D.EXPORT_NOT || !viewer.getShowFrank() + if (isExport || !viewer.getShowFrank() || !g3d.setColix(Graphics3D.getColixTranslucent(colix, g3d.haveTranslucentObjects(), 0.5f))) return; Modified: branches/v12_2/Jmol/src/org/jmol/shape/LabelsRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shape/LabelsRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shape/LabelsRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -47,7 +47,7 @@ String[] labelStrings = labels.strings; short[] colixes = labels.colixes; short[] bgcolixes = labels.bgcolixes; - if (exportType != Graphics3D.EXPORT_NOT) + if (isExport) bgcolixes = g3d.getBgColixes(bgcolixes); byte[] fids = labels.fids; int[] offsets = labels.offsets; @@ -108,7 +108,7 @@ zBox = 1; Text text = labels.getLabel(i); - float[] boxXY = (exportType == Graphics3D.EXPORT_NOT + float[] boxXY = (!isExport || viewer.getCreatingImage() ? labels.getBox(i) : new float[5]); if (boxXY == null) labels.putBox(i, boxXY = new float[5]); Modified: branches/v12_2/Jmol/src/org/jmol/shape/MeasuresRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shape/MeasuresRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shape/MeasuresRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -220,7 +220,7 @@ } private void renderPendingMeasurement(MeasurementPending measurementPending) { - if (exportType != Graphics3D.EXPORT_NOT || measurementPending == null) + if (isExport || measurementPending == null) return; int count = measurementPending.getCount(); if (count == 0) Modified: branches/v12_2/Jmol/src/org/jmol/shape/MeshRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shape/MeshRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shape/MeshRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -65,7 +65,6 @@ protected final Point3i pt1i = new Point3i(); protected final Point3i pt2i = new Point3i(); protected final Point3i pt3i = new Point3i(); - protected boolean isExport; protected int exportPass; @Override @@ -260,7 +259,7 @@ if (!g3d.isDirectedTowardsCamera(normix)) continue; if (fill) { - if (exportType != Graphics3D.EXPORT_NOT) { + if (isExport) { g3d.fillTriangle(screens[iC], colix, normix, screens[iB], colix, normix, screens[iA], colix, normix); } else if (iShowTriangles) { Modified: branches/v12_2/Jmol/src/org/jmol/shape/ShapeRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shape/ShapeRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shape/ShapeRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -51,6 +51,7 @@ protected short madMid; protected short madEnd; protected int exportType; + protected boolean isExport; public final void setViewerG3dShapeID(Viewer viewer, JmolRendererInterface g3d, int shapeID) { this.viewer = viewer; @@ -68,8 +69,10 @@ this.modelSet = modelSet; this.shape = shape; exportType = g3d.getExportType(); + isExport = (exportType != Graphics3D.EXPORT_NOT); render(); exportType = Graphics3D.EXPORT_NOT; + isExport = false; } abstract protected void render(); Modified: branches/v12_2/Jmol/src/org/jmol/shape/SticksRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shape/SticksRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shape/SticksRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -396,7 +396,7 @@ g3d.drawLine(colixA, colixB, xA, yA, zA, xB, yB, zB); else g3d.fillCylinder(colixA, colixB, endcaps, - (exportType == Graphics3D.EXPORT_NOT || mad == 1 ? diameter : mad), + (!isExport || mad == 1 ? diameter : mad), xA, yA, zA, xB, yB, zB); } Modified: branches/v12_2/Jmol/src/org/jmol/shape/UccageRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shape/UccageRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shape/UccageRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -27,7 +27,6 @@ import java.text.NumberFormat; import org.jmol.api.SymmetryInterface; -import org.jmol.g3d.Graphics3D; import org.jmol.util.BoxInfo; import org.jmol.util.SimpleUnitCell; import org.jmol.util.TextFormat; @@ -135,7 +134,7 @@ } private void renderInfo(SymmetryInterface symmetry) { - if (exportType != Graphics3D.EXPORT_NOT + if (isExport || !g3d.setColix(viewer.getColixBackgroundContrast())) return; if (nf == null) { Modified: branches/v12_2/Jmol/src/org/jmol/shapebio/BioShapeRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shapebio/BioShapeRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shapebio/BioShapeRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -87,7 +87,7 @@ return; invalidateMesh = false; - boolean TF = exportType != Graphics3D.EXPORT_NOT || viewer.getHighResolution(); + boolean TF = (isExport || viewer.getHighResolution()); if (TF != isHighRes) invalidateMesh = true; isHighRes = TF; Modified: branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceRenderer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceRenderer.java 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceRenderer.java 2011-10-16 14:59:03 UTC (rev 16360) @@ -59,7 +59,6 @@ protected void render() { iShowNormals = viewer.getTestFlag(4); showNumbers = viewer.getTestFlag(3); - isExport = (exportType != Graphics3D.EXPORT_NOT); isosurface = (Isosurface) shape; exportPass = (isExport ? 2 : 0); isNavigationMode = viewer.getNavigationMode(); Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-16 14:58:27 UTC (rev 16359) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-16 14:59:03 UTC (rev 16360) @@ -4,6 +4,7 @@ version=12.2.2_dev +# bug fix: POV-Ray export of cartoons broken # bug fix: script javascript:xxxx() broken # ------------------------------------------------------------------------------ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-17 02:49:56
|
Revision: 16364 http://jmol.svn.sourceforge.net/jmol/?rev=16364&view=rev Author: hansonr Date: 2011-10-17 02:49:49 +0000 (Mon, 17 Oct 2011) Log Message: ----------- version=12.2.3_dev # bug fix: for (x IN {*}) ... makes x a bitset and leads to array[1] for x.atomName # bug fix: for (x IN {*}.bonds) does not work Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/script/ScriptCompiler.java branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java branches/v12_2/Jmol/src/org/jmol/script/ScriptMathProcessor.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/script/ScriptCompiler.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/script/ScriptCompiler.java 2011-10-16 19:44:25 UTC (rev 16363) +++ branches/v12_2/Jmol/src/org/jmol/script/ScriptCompiler.java 2011-10-17 02:49:49 UTC (rev 16364) @@ -1622,10 +1622,12 @@ } else if (nTokens == 3 && tokAt(2) == Token.var) { addContextVariable(ident); } else if ((nTokens == 3 || nTokens == 4) && theTok == Token.in) { + // for ( var x IN + // for ( x IN nSemiSkip -= 2; forPoint3 = 2; - // for ( var x IN - // for ( x IN + addTokenToPrefix(theToken); + theToken = Token.tokenLeftParen; } else if (braceCount == 0 && parenCount == 0) { isEndOfCommand = true; ichEnd = ichToken + 1; Modified: branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-10-16 19:44:25 UTC (rev 16363) +++ branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-10-17 02:49:49 UTC (rev 16364) @@ -1242,7 +1242,7 @@ Point3f zero = (minmaxtype == Token.allfloat ? new Point3f() : null); Point3f pt = (isPt || !isAtoms ? new Point3f() : null); if (isExplicitlyAll || isString && !haveIndex - && minmaxtype != Token.allfloat) + && minmaxtype != Token.allfloat && minmaxtype != Token.min) minmaxtype = Token.all; List<Object> vout = (minmaxtype == Token.all ? new ArrayList<Object>() : null); @@ -5869,6 +5869,8 @@ nSkip -= 2; if (tokAt(++i) == Token.expressionBegin || tokAt(i) == Token.bitset) { bsOrList = atomExpression(i); + if (isBondSet) + bsOrList = new BondSet((BitSet) bsOrList); } else { List<ScriptVariable> what = parameterExpressionList(-i, 1, false); if (what == null || what.size() < 1) Modified: branches/v12_2/Jmol/src/org/jmol/script/ScriptMathProcessor.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/script/ScriptMathProcessor.java 2011-10-16 19:44:25 UTC (rev 16363) +++ branches/v12_2/Jmol/src/org/jmol/script/ScriptMathProcessor.java 2011-10-17 02:49:49 UTC (rev 16364) @@ -3384,6 +3384,9 @@ if (op.intValue == Token.bonds && x2.value instanceof BondSet) return addX(x2); BitSet bs = ScriptVariable.bsSelect(x2); + if (bs.cardinality() == 1 + && (op.intValue & Token.minmaxmask) == 0) + op.intValue = Token.min; Object val = eval.getBitsetProperty(bs, op.intValue, null, null, x2.value, op.value, false, x2.index, true); if (op.intValue == Token.bonds) Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-16 19:44:25 UTC (rev 16363) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-17 02:49:49 UTC (rev 16364) @@ -4,6 +4,8 @@ version=12.2.3_dev +# bug fix: for (x IN {*}) ... makes x a bitset and leads to array[1] for x.atomName +# bug fix: for (x IN {*}.bonds) does not work # ------------------------------------------------------------------------------ #version=12.2.2 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-17 04:10:04
|
Revision: 16367 http://jmol.svn.sourceforge.net/jmol/?rev=16367&view=rev Author: hansonr Date: 2011-10-17 04:09:57 +0000 (Mon, 17 Oct 2011) Log Message: ----------- version=12.2.3_dev # bug fix: load append twice can cause zap to be in wrong place in state file Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/modelset/ModelCollection.java branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java branches/v12_2/Jmol/src/org/jmol/viewer/DataManager.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/modelset/ModelCollection.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/modelset/ModelCollection.java 2011-10-17 04:09:07 UTC (rev 16366) +++ branches/v12_2/Jmol/src/org/jmol/modelset/ModelCollection.java 2011-10-17 04:09:57 UTC (rev 16367) @@ -4087,8 +4087,8 @@ deleteBonds(bsBonds, false); } - public void appendLoadStates(StringBuffer commands) { - boolean isFirst = true; + public void appendLoadStates(StringBuffer cmds) { + StringBuffer commands = new StringBuffer(); for (int i = 0; i < modelCount; i++) { if (isJmolDataFrame(i) || isTrajectorySubFrame(i)) continue; @@ -4106,12 +4106,18 @@ models[i].loadScript = new StringBuffer(); Viewer.getInlineData(commands, getModelExtract(bs, false, true, "MOL"), i > 0); } else { - if (models[i].loadScript.indexOf("append") >= 0 && isFirst) - commands.append("\n zap;\n"); commands.append(models[i].loadScript); } - isFirst = false; } + String s = commands.toString(); + // add a zap command before the first load command. + int i = s.indexOf("load /*data*/"); + int j = s.indexOf("load /*file*/"); + if (j >= 0 && j < i) + i = j; + if (i >= 0) + s = s.substring(0, i) + "zap;" + s.substring(i); + cmds.append(s); } /* Modified: branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-10-17 04:09:07 UTC (rev 16366) +++ branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-10-17 04:09:57 UTC (rev 16367) @@ -8396,7 +8396,7 @@ return; case Token.data: isData = true; - loadScript.append(" data"); + loadScript.append(" /*data*/ data"); String key = stringParameter(++i).toLowerCase(); loadScript.append(" ").append(Escape.escape(key)); isAppend = key.startsWith("append"); Modified: branches/v12_2/Jmol/src/org/jmol/viewer/DataManager.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/DataManager.java 2011-10-17 04:09:07 UTC (rev 16366) +++ branches/v12_2/Jmol/src/org/jmol/viewer/DataManager.java 2011-10-17 04:09:57 UTC (rev 16367) @@ -359,7 +359,7 @@ static void getInlineData(StringBuffer loadScript, String strModel, boolean isAppend, String loadFilter) { String tag = (isAppend ? "append" : "model") + " inline"; - loadScript.append("load data \"").append(tag).append("\"\n") + loadScript.append("load /*data*/ data \"").append(tag).append("\"\n") .append(strModel).append("end \"").append(tag) .append(loadFilter == null || loadFilter.length() == 0 ? "" : " filter" + Escape.escape(loadFilter)) .append("\";"); Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-17 04:09:07 UTC (rev 16366) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-17 04:09:57 UTC (rev 16367) @@ -4,6 +4,7 @@ version=12.2.3_dev +# bug fix: load append twice can cause zap to be in wrong place in state file # bug fix: for (x IN {*}) ... makes x a bitset and leads to array[1] for x.atomName # bug fix: for (x IN {*}.bonds) does not work # ------------------------------------------------------------------------------ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-18 22:34:53
|
Revision: 16372 http://jmol.svn.sourceforge.net/jmol/?rev=16372&view=rev Author: hansonr Date: 2011-10-18 22:34:46 +0000 (Tue, 18 Oct 2011) Log Message: ----------- version=12.2.3_dev # bug fix: reading of JVXL files for color density fails to color properly Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/jvxl/calc/MarchingCubes.java branches/v12_2/Jmol/src/org/jmol/jvxl/data/JvxlCoder.java branches/v12_2/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java branches/v12_2/Jmol/src/org/jmol/jvxl/readers/MrcBinaryReader.java branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java branches/v12_2/Jmol/src/org/jmol/util/XmlReader.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/jvxl/calc/MarchingCubes.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/jvxl/calc/MarchingCubes.java 2011-10-18 22:34:01 UTC (rev 16371) +++ branches/v12_2/Jmol/src/org/jmol/jvxl/calc/MarchingCubes.java 2011-10-18 22:34:46 UTC (rev 16372) @@ -129,7 +129,7 @@ protected void setParameters(VolumeData volumeData, Parameters params) { this.volumeData = volumeData; - colorDensity = params.colorDensity && (mode != MODE_JVXL); + colorDensity = params.colorDensity; isContoured = params.thePlane == null && params.isContoured && !colorDensity; cutoff = params.cutoff; isCutoffAbsolute = params.isCutoffAbsolute; @@ -269,7 +269,8 @@ voxelData = volumeData.getVoxelData(); break; } - allInside = (colorDensity && (cutoff == 0 || bsVoxels.cardinality() == 0)); + allInside = (colorDensity && (cutoff == 0 + || mode == MODE_JVXL && bsVoxels.cardinality() == 0)); boolean colorDensityAll = (colorDensity && cutoff == 0); float v = 0; for (int x = x0; x != x1; x += xStep, ptX += ptStep, pt = ptX) { Modified: branches/v12_2/Jmol/src/org/jmol/jvxl/data/JvxlCoder.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/jvxl/data/JvxlCoder.java 2011-10-18 22:34:01 UTC (rev 16371) +++ branches/v12_2/Jmol/src/org/jmol/jvxl/data/JvxlCoder.java 2011-10-18 22:34:46 UTC (rev 16372) @@ -315,10 +315,11 @@ addAttrib(attribs, "\n colorMapped", "true"); addAttrib(attribs, "\n plane", Escape.escape(jvxlData.jvxlPlane)); } - addAttrib(attribs, "\n color", jvxlData.color); + if (jvxlData.color != null && jvxlData.color.indexOf("null") < 0) + addAttrib(attribs, "\n color", jvxlData.color); + addAttrib(attribs, "\n translucency", "" + jvxlData.translucency); if (jvxlData.meshColor != null) addAttrib(attribs, "\n meshColor", jvxlData.meshColor); - addAttrib(attribs, "\n translucency", "" + jvxlData.translucency); if (jvxlData.colorScheme != null) addAttrib(attribs, "\n colorScheme", jvxlData.colorScheme); if (jvxlData.rendering != null) Modified: branches/v12_2/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java 2011-10-18 22:34:01 UTC (rev 16371) +++ branches/v12_2/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java 2011-10-18 22:34:46 UTC (rev 16372) @@ -273,7 +273,7 @@ // new Jmol 12.1.50 jvxlData.color = XmlReader.getXmlAttrib(data, "color"); - if (jvxlData.color.length() == 0) + if (jvxlData.color.length() == 0 || jvxlData.color.indexOf("null") >= 0) jvxlData.color = "orange"; jvxlData.translucency = parseFloat(XmlReader.getXmlAttrib(data, "translucency")); if (Float.isNaN(jvxlData.translucency)) @@ -286,7 +286,7 @@ jvxlData.rendering = s; jvxlData.colorScheme = XmlReader.getXmlAttrib(data, "colorScheme"); if (jvxlData.colorScheme.length() == 0) - jvxlData.colorScheme = "rgb"; + jvxlData.colorScheme = null; jvxlData.slabValue = parseInt(XmlReader.getXmlAttrib(data, "slabValue")); jvxlData.isSlabbable = (XmlReader.getXmlAttrib(data, "slabbable").equalsIgnoreCase("true")); jvxlData.diameter = parseInt(XmlReader.getXmlAttrib(data, "diameter")); @@ -579,7 +579,7 @@ boolean needContourMinMax = (params.mappedDataMin == Float.MAX_VALUE); for (int i = 0; i < vertexCount; i += vertexIncrement) { float value; - if(getValues) + if (getValues) value = vertexValues[i] = getNextValue(); else value = vertexValues[i]; @@ -594,20 +594,21 @@ params.mappedDataMin = contourPlaneMinimumValue; params.mappedDataMax = contourPlaneMaximumValue; } - - for (int i = 0; i < vertexCount; i += vertexIncrement) { - float value = vertexValues[i]; - //note: these are just default colorings - //orbital color had a bug through 11.2.6/11.3.6 - if (marchingSquares != null && params.isContoured) { - marchingSquares.setContourData(i, value); - } else if (params.colorBySign) { - colixes[i] = ((params.isColorReversed ? value > 0 : value <= 0) ? colixNeg - : colixPos); - } else { - colixes[i] = params.colorEncoder.getColorIndex(value); + if (jvxlData.colorScheme != null) + for (int i = 0; i < vertexCount; i += vertexIncrement) { + float value = vertexValues[i]; + //note: these are just default colorings + //orbital color had a bug through 11.2.6/11.3.6 + if (marchingSquares != null && params.isContoured) { + marchingSquares.setContourData(i, value); + continue; + } + short colix = (!params.colorBySign ? params.colorEncoder + .getColorIndex(value) : (params.isColorReversed ? value > 0 + : value <= 0) ? colixNeg : colixPos); + colixes[i] = Graphics3D.getColixTranslucent(colix, true, + jvxlData.translucency); } - } return jvxlColorDataRead + "\n"; } Modified: branches/v12_2/Jmol/src/org/jmol/jvxl/readers/MrcBinaryReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/jvxl/readers/MrcBinaryReader.java 2011-10-18 22:34:01 UTC (rev 16371) +++ branches/v12_2/Jmol/src/org/jmol/jvxl/readers/MrcBinaryReader.java 2011-10-18 22:34:46 UTC (rev 16372) @@ -226,7 +226,7 @@ if (params.thePlane == null && (params.cutoffAutomatic || !Float.isNaN(params.sigma))) { float sigma = (Float.isNaN(params.sigma) ? 1 : params.sigma); params.cutoff = rmsDeviation * sigma + dmean; - Logger.info("Cutoff set to (mean + rmsDeviation*" + sigma + ")\n"); + Logger.info("Cutoff set to (mean + rmsDeviation*" + sigma + " = " + params.cutoff + ")\n"); } jvxlFileHeaderBuffer = new StringBuffer(); Modified: branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java 2011-10-18 22:34:01 UTC (rev 16371) +++ branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java 2011-10-18 22:34:46 UTC (rev 16372) @@ -1110,6 +1110,9 @@ surfaceReader.colorIsosurface(); params.state = Parameters.STATE_DATA_COLORED; } + if (jvxlData.colorDensity) { + params.state = Parameters.STATE_DATA_COLORED; + } if (params.colorBySign || params.isBicolorMap) { params.state = Parameters.STATE_DATA_COLORED; surfaceReader.applyColorScale(); @@ -1119,7 +1122,8 @@ surfaceReader.discardTempData(false); params.mappedDataMin = Float.MAX_VALUE; surfaceReader.closeReader(); - if (surfaceReader.hasColorData || params.colorDensity) { + if (params.state != Parameters.STATE_DATA_COLORED && + (surfaceReader.hasColorData || params.colorDensity)) { params.state = Parameters.STATE_DATA_COLORED; colorIsosurface(); } Modified: branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java 2011-10-18 22:34:01 UTC (rev 16371) +++ branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java 2011-10-18 22:34:46 UTC (rev 16372) @@ -644,6 +644,7 @@ setTokenProperty(Token.getTokFromName(tokens[i]), true); } + isColorSolid = true; if (colorEncoder != null) { if (jvxlData.colorScheme != null) { String colorScheme = jvxlData.colorScheme; Modified: branches/v12_2/Jmol/src/org/jmol/util/XmlReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/util/XmlReader.java 2011-10-18 22:34:01 UTC (rev 16371) +++ branches/v12_2/Jmol/src/org/jmol/util/XmlReader.java 2011-10-18 22:34:46 UTC (rev 16372) @@ -170,7 +170,11 @@ int ipt = next[0]; if (ipt < 0 || (ipt = data.indexOf(what, next[0])) < 0) return -1; - return next[0] = ipt + what.length() + offset; + ipt += what.length(); + next[0] = ipt + offset; + if (offset > 0 && ipt < data.length() && data.charAt(ipt) != '=') + return setNext(data, what, next, offset); + return next[0]; } private void skipTo(String key) throws Exception { Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-18 22:34:01 UTC (rev 16371) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-18 22:34:46 UTC (rev 16372) @@ -4,6 +4,7 @@ version=12.2.3_dev +# bug fix: reading of JVXL files for color density fails to color properly # bug fix: load append twice can cause zap to be in wrong place in state file # bug fix: for (x IN {*}) ... makes x a bitset and leads to array[1] for x.atomName # bug fix: for (x IN {*}.bonds) does not work This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-19 10:13:29
|
Revision: 16374 http://jmol.svn.sourceforge.net/jmol/?rev=16374&view=rev Author: hansonr Date: 2011-10-19 10:13:23 +0000 (Wed, 19 Oct 2011) Log Message: ----------- version=12.2.3_dev # bug fix: .... vdw 100.0% --- should be OK with float there, even if it rounds. Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-10-19 10:12:49 UTC (rev 16373) +++ branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-10-19 10:13:23 UTC (rev 16374) @@ -11133,16 +11133,8 @@ case Token.vanderwaals: value = 1; factorType = RadiusData.EnumType.FACTOR; - switch (tok) { - case Token.adpmax: - case Token.adpmin: - case Token.ionic: - case Token.hydrophobic: - case Token.temperature: - case Token.vanderwaals: - default: - } - vdwType = (tok == Token.vanderwaals ? null : EnumVdw.getVdwType2(Token.nameOf(tok))); + vdwType = (tok == Token.vanderwaals ? null : EnumVdw.getVdwType2(Token + .nameOf(tok))); tok = tokAt(++index); break; } @@ -11159,9 +11151,33 @@ iToken = index - 1; break; case Token.plus: + case Token.integer: case Token.decimal: - if (tok == Token.plus) + if (tok == Token.plus) { index++; + } else if (tokAt(index + 1) == Token.percent) { + value = Math.round(floatParameter(index)); + iToken = ++index; + factorType = RadiusData.EnumType.FACTOR; + if (value < 0 || value > 200) + integerOutOfRange(0, 200); + value /= 100; + break; + } else if (tok == Token.integer) { + value = intParameter(index); + // rasmol 250-scale if positive or percent (again), if negative + // (deprecated) + if (value > 749 || value < -200) + integerOutOfRange(-200, 749); + if (value > 0) { + value /= 250; + factorType = RadiusData.EnumType.ABSOLUTE; + } else { + value /= -100; + factorType = RadiusData.EnumType.FACTOR; + } + break; + } value = floatParameter(index, (isOnly || !allowAbsolute ? -Atom.RADIUS_MAX : 0), Atom.RADIUS_MAX); if (tok == Token.plus || !allowAbsolute) { @@ -11173,28 +11189,6 @@ if (isOnly) value = -value; break; - case Token.integer: - value = intParameter(index); - if (tokAt(index + 1) == Token.percent) { - iToken = ++index; - factorType = RadiusData.EnumType.FACTOR; - if (value < 0 || value > 200) - integerOutOfRange(0, 200); - value /= 100; - break; - } - // rasmol 250-scale if positive or percent (again), if negative - // (deprecated) - if (value > 749 || value < -200) - integerOutOfRange(-200, 749); - if (value > 0) { - value /= 250; - factorType = RadiusData.EnumType.ABSOLUTE; - } else { - value /= -100; - factorType = RadiusData.EnumType.FACTOR; - } - break; default: if (value == 1) index--; Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-19 10:12:49 UTC (rev 16373) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-19 10:13:23 UTC (rev 16374) @@ -4,6 +4,7 @@ version=12.2.3_dev +# bug fix: .... vdw 100.0% --- should be OK with float there, even if it rounds. # bug fix: reading of JVXL files for color density fails to color properly # bug fix: load append twice can cause zap to be in wrong place in state file # bug fix: for (x IN {*}) ... makes x a bitset and leads to array[1] for x.atomName This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-20 22:03:28
|
Revision: 16382 http://jmol.svn.sourceforge.net/jmol/?rev=16382&view=rev Author: hansonr Date: 2011-10-20 22:03:21 +0000 (Thu, 20 Oct 2011) Log Message: ----------- version=12.2.3_dev # bug fix: reading of JVXL files for color density fails to color properly Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java 2011-10-20 15:06:14 UTC (rev 16381) +++ branches/v12_2/Jmol/src/org/jmol/shapesurface/IsosurfaceMesh.java 2011-10-20 22:03:21 UTC (rev 16382) @@ -644,7 +644,7 @@ setTokenProperty(Token.getTokFromName(tokens[i]), true); } - isColorSolid = true; + isColorSolid = !jvxlData.isBicolorMap; if (colorEncoder != null) { if (jvxlData.colorScheme != null) { String colorScheme = jvxlData.colorScheme; Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-20 15:06:14 UTC (rev 16381) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-20 22:03:21 UTC (rev 16382) @@ -4,8 +4,8 @@ version=12.2.3_dev +# bug fix: reading of JVXL files for color density fails to color properly # bug fix: .... vdw 100.0% --- should be OK with float there, even if it rounds. -# bug fix: reading of JVXL files for color density fails to color properly # bug fix: load append twice can cause zap to be in wrong place in state file # bug fix: for (x IN {*}) ... makes x a bitset and leads to array[1] for x.atomName # bug fix: for (x IN {*}.bonds) does not work This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-25 01:26:07
|
Revision: 16400 http://jmol.svn.sourceforge.net/jmol/?rev=16400&view=rev Author: hansonr Date: 2011-10-25 01:26:00 +0000 (Tue, 25 Oct 2011) Log Message: ----------- version=12.2.3_dev # bug fix: userFunction(x,@y) should operate as per all math # -- parens - value of variable pointed to by y # -- x = myfunc(x, @y) same action as just myfunc(x, @y) # bug fix: userFunction x @y # -- no parens - should operate as value of x and value of y # -- @ is unnecessary but allowed Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-10-25 01:23:23 UTC (rev 16399) +++ branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-10-25 01:26:00 UTC (rev 16400) @@ -2267,6 +2267,13 @@ } if (i == statementLength)// || isScriptCheck) return i == statementLength; + switch (statement[0].tok) { + case Token.parallel: + case Token.function: + case Token.identifier: + if (tokAt(1) == Token.leftparen) + return true; + } fixed = new Token[statementLength]; fixed[0] = statement[0]; boolean isExpression = false; @@ -12721,6 +12728,7 @@ case Token.middle: case Token.bottom: case Token.identifier: + case Token.string: case Token.id: if (theTok == Token.id) pt++; Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-25 01:23:23 UTC (rev 16399) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-25 01:26:00 UTC (rev 16400) @@ -4,6 +4,12 @@ version=12.2.3_dev +# bug fix: userFunction(x,@y) should operate as per all math +# -- parens - value of variable pointed to by y +# -- x = myfunc(x, @y) same action as just myfunc(x, @y) +# bug fix: userFunction x @y +# -- no parens - should operate as value of x and value of y +# -- @ is unnecessary but allowed # bug fix: reading of JVXL files for color density fails to color properly # bug fix: .... vdw 100.0% --- should be OK with float there, even if it rounds. # bug fix: load append twice can cause zap to be in wrong place in state file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-10-29 07:37:47
|
Revision: 16422 http://jmol.svn.sourceforge.net/jmol/?rev=16422&view=rev Author: hansonr Date: 2011-10-29 07:37:40 +0000 (Sat, 29 Oct 2011) Log Message: ----------- version=12.2.3_dev # bug fix: CRYSTAL reader not properly setting model properties Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/GamessReader.java branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/GaussianReader.java branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/JaguarReader.java branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/NWChemReader.java branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/QchemReader.java branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/SpartanArchive.java branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/SpartanInputReader.java branches/v12_2/Jmol/src/org/jmol/adapter/readers/simple/AmpacReader.java branches/v12_2/Jmol/src/org/jmol/adapter/readers/xtal/CrystalReader.java branches/v12_2/Jmol/src/org/jmol/adapter/smarter/AtomSetCollection.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/GamessReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/GamessReader.java 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/GamessReader.java 2011-10-29 07:37:40 UTC (rev 16422) @@ -180,10 +180,10 @@ } atomSetCollection.setAtomSetFrequency(null, null, "" + frequencies[i], null); if (red_masses != null) - atomSetCollection.setAtomSetProperty("ReducedMass", + atomSetCollection.setAtomSetModelProperty("ReducedMass", red_masses[red_masses.length - frequencyCount + i] + " AMU"); if (intensities != null) - atomSetCollection.setAtomSetProperty("IRIntensity", + atomSetCollection.setAtomSetModelProperty("IRIntensity", intensities[intensities.length - frequencyCount + i] + " D^2/AMU-Angstrom^2"); Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/GaussianReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/GaussianReader.java 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/GaussianReader.java 2011-10-29 07:37:40 UTC (rev 16422) @@ -290,7 +290,7 @@ parseFloat(tokens[++offset]), parseFloat(tokens[++offset])); } - atomSetCollection.setAtomSetProperty(SmarterJmolAdapter.PATH_KEY, + atomSetCollection.setAtomSetModelProperty(SmarterJmolAdapter.PATH_KEY, "Calculation "+calculationNumber+ (scanPoint>=0?(SmarterJmolAdapter.PATH_SEPARATOR+"Scan Point "+scanPoint):"")+ SmarterJmolAdapter.PATH_SEPARATOR+path); @@ -514,11 +514,11 @@ atomSetCollection.cloneLastAtomSet(); // set the properties atomSetCollection.setAtomSetFrequency("Calculation " + calculationNumber, symmetries[i], frequencies[i], null); - atomSetCollection.setAtomSetProperty("ReducedMass", + atomSetCollection.setAtomSetModelProperty("ReducedMass", red_masses[i]+" AMU"); - atomSetCollection.setAtomSetProperty("ForceConstant", + atomSetCollection.setAtomSetModelProperty("ForceConstant", frc_consts[i]+" mDyne/A"); - atomSetCollection.setAtomSetProperty("IRIntensity", + atomSetCollection.setAtomSetModelProperty("IRIntensity", intensities[i]+" KM/Mole"); } discardLinesUntilContains(" AN "); Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/JaguarReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/JaguarReader.java 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/JaguarReader.java 2011-10-29 07:37:40 UTC (rev 16422) @@ -413,7 +413,7 @@ atomSetCollection.cloneFirstAtomSet(0); atomSetCollection.setAtomSetFrequency(null, symmetries == null ? null : symmetries[i + 1], frequencies[i + 1], null); if (intensities != null) - atomSetCollection.setAtomSetProperty("IRIntensity", + atomSetCollection.setAtomSetModelProperty("IRIntensity", intensities[i + 1] + " km/mol"); } haveLine = true; Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/NWChemReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/NWChemReader.java 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/NWChemReader.java 2011-10-29 07:37:40 UTC (rev 16422) @@ -225,7 +225,7 @@ private void setEnergy(String key, String value) { energyKey = key; energyValue = value; - atomSetCollection.setAtomSetProperty(energyKey, energyValue); + atomSetCollection.setAtomSetModelProperty(energyKey, energyValue); atomSetCollection.setAtomSetName(energyKey + " = " + energyValue); haveEnergy = true; } @@ -300,7 +300,7 @@ String tokens[]; haveEnergy = false; atomSetCollection.newAtomSet(); - atomSetCollection.setAtomSetProperty(SmarterJmolAdapter.PATH_KEY, "Task " + atomSetCollection.setAtomSetModelProperty(SmarterJmolAdapter.PATH_KEY, "Task " + taskNumber + (inInput ? SmarterJmolAdapter.PATH_SEPARATOR + "Input" : SmarterJmolAdapter.PATH_SEPARATOR + "Geometry")); @@ -318,7 +318,7 @@ // only if was converged, use the last energy for the name and properties if (converged) { setEnergy(energyKey, energyValue); - atomSetCollection.setAtomSetProperty("Step", "converged"); + atomSetCollection.setAtomSetModelProperty("Step", "converged"); } else if (inInput) { atomSetCollection.setAtomSetName("Input"); } @@ -352,8 +352,8 @@ atomSetCollection.newAtomSet(); if (equivalentAtomSets > 1) atomSetCollection.cloneLastAtomSetProperties(); - atomSetCollection.setAtomSetProperty("vector", "gradient"); - atomSetCollection.setAtomSetProperty(SmarterJmolAdapter.PATH_KEY, "Task " + atomSetCollection.setAtomSetModelProperty("vector", "gradient"); + atomSetCollection.setAtomSetModelProperty(SmarterJmolAdapter.PATH_KEY, "Task " + taskNumber + SmarterJmolAdapter.PATH_SEPARATOR + "Gradients"); while (readLine() != null && line.length() > 0) { tokens = getTokens(); // get the tokens in the line @@ -530,7 +530,7 @@ int iset = atomSetCollection.getCurrentAtomSetIndex(); atomSetCollection.setCurrentAtomSetIndex(idx++); atomSetCollection.setAtomSetFrequency(null, null, tokens[i], null); - atomSetCollection.setAtomSetProperty("IRIntensity", tokens[5] + atomSetCollection.setAtomSetModelProperty("IRIntensity", tokens[5] + " KM/mol"); atomSetCollection.setCurrentAtomSetIndex(iset); } Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/QchemReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/QchemReader.java 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/QchemReader.java 2011-10-29 07:37:40 UTC (rev 16422) @@ -166,7 +166,7 @@ Atom atom = atomSetCollection.addNewAtom(); atom.elementSymbol = symbol; setAtomCoord(atom, x, y, z); - atomSetCollection.setAtomSetProperty(SmarterJmolAdapter.PATH_KEY, + atomSetCollection.setAtomSetModelProperty(SmarterJmolAdapter.PATH_KEY, "Calculation "+calculationNumber); } } Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/SpartanArchive.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/SpartanArchive.java 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/SpartanArchive.java 2011-10-29 07:37:40 UTC (rev 16422) @@ -553,8 +553,8 @@ } freqs.add(info); r.atomSetCollection.setAtomSetName(label + " " + freq + " cm^-1"); - r.atomSetCollection.setAtomSetProperty("Frequency", freq + " cm^-1"); - r.atomSetCollection.setAtomSetProperty(SmarterJmolAdapter.PATH_KEY, "Frequencies"); + r.atomSetCollection.setAtomSetModelProperty("Frequency", freq + " cm^-1"); + r.atomSetCollection.setAtomSetModelProperty(SmarterJmolAdapter.PATH_KEY, "Frequencies"); } r.atomSetCollection.setAtomSetCollectionAuxiliaryInfo("VibFreqs", freqs); int atomCount = r.atomSetCollection.getFirstAtomSetAtomCount(); Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/SpartanInputReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/SpartanInputReader.java 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/SpartanInputReader.java 2011-10-29 07:37:40 UTC (rev 16422) @@ -80,8 +80,8 @@ if (constraints.length() == 0) return; atomSetCollection.setAtomSetAuxiliaryInfo("constraints", constraints); - atomSetCollection.setAtomSetProperty(SmarterJmolAdapter.PATH_KEY, "EnergyProfile"); - atomSetCollection.setAtomSetProperty("Constraint", constraints); + atomSetCollection.setAtomSetModelProperty(SmarterJmolAdapter.PATH_KEY, "EnergyProfile"); + atomSetCollection.setAtomSetModelProperty("Constraint", constraints); } private void readTransform() throws Exception { Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/simple/AmpacReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/simple/AmpacReader.java 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/simple/AmpacReader.java 2011-10-29 07:37:40 UTC (rev 16422) @@ -193,9 +193,9 @@ continue; atomSetCollection.cloneLastAtomSet(); atomSetCollection.setAtomSetName(frequencies[i + 2] + " cm^-1"); - atomSetCollection.setAtomSetProperty("Frequency", frequencies[i + 2] + atomSetCollection.setAtomSetModelProperty("Frequency", frequencies[i + 2] + " cm^-1"); - atomSetCollection.setAtomSetProperty(SmarterJmolAdapter.PATH_KEY, + atomSetCollection.setAtomSetModelProperty(SmarterJmolAdapter.PATH_KEY, "Frequencies"); } fillFrequencyData(iAtom0, atomCount, atomCount, ignore, false, 8, 9, null); Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/xtal/CrystalReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/xtal/CrystalReader.java 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/xtal/CrystalReader.java 2011-10-29 07:37:40 UTC (rev 16422) @@ -393,7 +393,7 @@ else break; if (atomSetCollection.getAtomCount() > 0) - atomSetCollection.setAtomSetAuxiliaryProperty(key, tokens[2]); + atomSetCollection.setAtomSetModelProperty(key, tokens[2]); readLine(); } return true; @@ -409,9 +409,9 @@ line = TextFormat.simpleReplace(line, "DENSITY", "DENSITY "); } String densityPrim = tokens[10]; - atomSetCollection.setAtomSetAuxiliaryProperty("volumePrimitive", + atomSetCollection.setAtomSetModelProperty("volumePrimitive", TextFormat.formatDecimal(parseFloat(volumePrim), 3)); - atomSetCollection.setAtomSetAuxiliaryProperty("densityPrimitive", + atomSetCollection.setAtomSetModelProperty("densityPrimitive", TextFormat.formatDecimal(parseFloat(densityPrim), 3)); return true; } @@ -455,7 +455,7 @@ s[j++] = tokens[pt]; } data = TextFormat.join(s, '\n', 0); - atomSetCollection.setAtomSetAuxiliaryProperty(name, data); + atomSetCollection.setAtomSetAtomProperty(name, data); } private boolean readHeader() throws Exception { @@ -941,10 +941,10 @@ private void setFreqValue(float freq, String[] data) { String activity = "IR: " + data[2] + ", Ram.: " + data[3]; atomSetCollection.setAtomSetFrequency(null, activity, "" + freq, null); - atomSetCollection.setAtomSetProperty("IRintensity", data[1] + " km/Mole"); - atomSetCollection.setAtomSetProperty("vibrationalSymmetry", data[0]); - atomSetCollection.setAtomSetProperty("IRactivity", data[2]); - atomSetCollection.setAtomSetProperty("Ramanactivity", data[3]); + atomSetCollection.setAtomSetModelProperty("IRintensity", data[1] + " km/Mole"); + atomSetCollection.setAtomSetModelProperty("vibrationalSymmetry", data[0]); + atomSetCollection.setAtomSetModelProperty("IRactivity", data[2]); + atomSetCollection.setAtomSetModelProperty("Ramanactivity", data[3]); atomSetCollection.setAtomSetName((isLongMode ? "LO " : "") + data[0] + " " + TextFormat.formatDecimal(freq, 2) + " cm-1 (" + TextFormat.formatDecimal(Float.parseFloat(data[1]), 0) Modified: branches/v12_2/Jmol/src/org/jmol/adapter/smarter/AtomSetCollection.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/smarter/AtomSetCollection.java 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/adapter/smarter/AtomSetCollection.java 2011-10-29 07:37:40 UTC (rev 16422) @@ -1489,7 +1489,7 @@ * @param key The key for the property * @param value The value to be associated with the key */ - public void setAtomSetProperty(String key, String value) { + public void setAtomSetModelProperty(String key, String value) { setAtomSetProperty(key, value, currentAtomSetIndex); } @@ -1511,7 +1511,7 @@ } - public void setAtomSetAuxiliaryProperty(String key, String data) { + public void setAtomSetAtomProperty(String key, String data) { if (!data.endsWith("\n")) { data += "\n"; } @@ -1660,16 +1660,16 @@ return; setAtomSetAuxiliaryInfo("EnergyString", energyString); setAtomSetAuxiliaryInfo("Energy", new Float(value)); - setAtomSetProperty("Energy", "" + value); + setAtomSetModelProperty("Energy", "" + value); } public void setAtomSetFrequency(String pathKey, String label, String freq, String units) { freq += " " + (units == null ? "cm^-1" : units); setAtomSetName((label == null ? "" : label + " ") + freq); - setAtomSetProperty("Frequency", freq); + setAtomSetModelProperty("Frequency", freq); if (label != null) - setAtomSetProperty("FrequencyLabel", label); - setAtomSetProperty(SmarterJmolAdapter.PATH_KEY, (pathKey == null ? "" + setAtomSetModelProperty("FrequencyLabel", label); + setAtomSetModelProperty(SmarterJmolAdapter.PATH_KEY, (pathKey == null ? "" : pathKey + SmarterJmolAdapter.PATH_SEPARATOR + "Frequencies") + "Frequencies"); } Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-29 06:42:24 UTC (rev 16421) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-10-29 07:37:40 UTC (rev 16422) @@ -4,6 +4,7 @@ version=12.2.3_dev +# bug fix: CRYSTAL reader not properly setting model properties # bug fix: userFunction(x,@y) should operate as per all math # -- parens - value of variable pointed to by y # -- x = myfunc(x, @y) same action as just myfunc(x, @y) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-11-01 01:31:25
|
Revision: 16433 http://jmol.svn.sourceforge.net/jmol/?rev=16433&view=rev Author: hansonr Date: 2011-11-01 01:31:18 +0000 (Tue, 01 Nov 2011) Log Message: ----------- version=12.2.4_dev # bug fix: array.bin(low,high,binSize) not documented and can cause exception Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/script/ScriptMathProcessor.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/script/ScriptMathProcessor.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/script/ScriptMathProcessor.java 2011-11-01 01:30:46 UTC (rev 16432) +++ branches/v12_2/Jmol/src/org/jmol/script/ScriptMathProcessor.java 2011-11-01 01:31:18 UTC (rev 16433) @@ -1025,7 +1025,7 @@ if (bin < 0) bin = 0; else if (bin >= nbins) - bin = nbins; + bin = nbins - 1; array[bin]++; } return addX(array); Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-01 01:30:46 UTC (rev 16432) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-01 01:31:18 UTC (rev 16433) @@ -4,6 +4,8 @@ version=12.2.4_dev +# bug fix: array.bin(low,high,binSize) not documented and can cause exception + # ------------------------------------------------------------------------------ #version=12.2.3 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-11-02 10:46:40
|
Revision: 16436 http://jmol.svn.sourceforge.net/jmol/?rev=16436&view=rev Author: hansonr Date: 2011-11-02 10:46:31 +0000 (Wed, 02 Nov 2011) Log Message: ----------- version=12.2.4_dev # bug fix: MO readers can fail if inappropriate filter "TLS" is given Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MOReader.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MOReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MOReader.java 2011-11-01 23:57:52 UTC (rev 16435) +++ branches/v12_2/Jmol/src/org/jmol/adapter/readers/quantum/MOReader.java 2011-11-02 10:46:31 UTC (rev 16436) @@ -545,7 +545,7 @@ private Map<String, Object> lastMoData; protected void setMOData(boolean clearOrbitals) { - if (shells != null && gaussians != null) { + if (shells != null && gaussians != null && orbitals.size() != 0) { moData.put("calculationType", calculationType); moData.put("energyUnits", energyUnits); moData.put("shells", shells); Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-01 23:57:52 UTC (rev 16435) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-02 10:46:31 UTC (rev 16436) @@ -4,6 +4,7 @@ version=12.2.4_dev +# bug fix: MO readers can fail if inappropriate filter "TLS" is given # bug fix: array.bin(low,high,binSize) not documented and can cause exception # ------------------------------------------------------------------------------ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-11-02 15:07:39
|
Revision: 16437 http://jmol.svn.sourceforge.net/jmol/?rev=16437&view=rev Author: hansonr Date: 2011-11-02 15:07:32 +0000 (Wed, 02 Nov 2011) Log Message: ----------- 12.2.4 FOR IMMEDIATE RELEASE # bug fix: workaround for weird Mac Point3i(Point3i pt) class initializer bug # bug fix: MO readers can fail if inappropriate filter "TLS" is given # bug fix: array.bin(low,high,binSize) not documented and can cause exception Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/adapter/smarter/AtomSetCollection.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/adapter/smarter/AtomSetCollection.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/adapter/smarter/AtomSetCollection.java 2011-11-02 10:46:31 UTC (rev 16436) +++ branches/v12_2/Jmol/src/org/jmol/adapter/smarter/AtomSetCollection.java 2011-11-02 15:07:32 UTC (rev 16437) @@ -864,8 +864,9 @@ getSymmetry().setMinMaxLatticeParameters(minXYZ, maxXYZ); if (doPackUnitCell || symmetryRange != 0 && maxXYZ.x - minXYZ.x == 1 && maxXYZ.y - minXYZ.y == 1 && maxXYZ.z - minXYZ.z == 1) { - minXYZ0 = new Point3i(minXYZ); - maxXYZ0 = new Point3i(maxXYZ); + // weird Mac bug does not allow new Point3i(minXYZ) !! + minXYZ0 = new Point3i(minXYZ.x, minXYZ.y, minXYZ.z); + maxXYZ0 = new Point3i(maxXYZ.x, maxXYZ.y, maxXYZ.z); dtype = (int) getSymmetry() .getUnitCellInfo(SimpleUnitCell.INFO_DIMENSIONS); switch (dtype) { Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-02 10:46:31 UTC (rev 16436) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-02 15:07:32 UTC (rev 16437) @@ -2,8 +2,9 @@ # NOTE: Generally only bug fixes should be entered here. # NOTE: New features should be introduced in the trunk version 12.3.x -version=12.2.4_dev +version=12.2.4 +# bug fix: workaround for weird Mac Point3i(Point3i pt) class initializer bug # bug fix: MO readers can fail if inappropriate filter "TLS" is given # bug fix: array.bin(low,high,binSize) not documented and can cause exception This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-11-02 23:06:33
|
Revision: 16445 http://jmol.svn.sourceforge.net/jmol/?rev=16445&view=rev Author: hansonr Date: 2011-11-02 23:06:27 +0000 (Wed, 02 Nov 2011) Log Message: ----------- version=12.2.4 # bug fix: nucleic acid residues with HO5' may render last group strangely (since 12.0.RC16, 6/6/2010) Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/modelsetbio/NucleicMonomer.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/modelsetbio/NucleicMonomer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/modelsetbio/NucleicMonomer.java 2011-11-02 23:05:04 UTC (rev 16444) +++ branches/v12_2/Jmol/src/org/jmol/modelsetbio/NucleicMonomer.java 2011-11-02 23:06:27 UTC (rev 16445) @@ -164,8 +164,10 @@ byte[] offsets) { super(chain, group3, seqcode, firstAtomIndex, lastAtomIndex, offsets); - if (offsets[NP] == -1 && (offsets[0] = offsets[H5T]) == -1) { + if (offsets[NP] == -1) { + if ((offsets[0] = offsets[H5T]) == -1) offsets[0] = offsets[O5Pr]; + if (offsets[0] >= 0) leadAtomIndex = firstAtomIndex + (offsets[0] & 0xFF); } this.hasRnaO2Prime = offsets[O2Pr] != -1; Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-02 23:05:04 UTC (rev 16444) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-02 23:06:27 UTC (rev 16445) @@ -4,6 +4,7 @@ version=12.2.4 +# bug fix: nucleic acid residues with HO5' may render last group strangely (since 12.0.RC16, 6/6/2010) # bug fix: workaround for weird Mac Point3i(Point3i pt) class initializer bug # bug fix: MO readers can fail if inappropriate filter "TLS" is given # bug fix: array.bin(low,high,binSize) not documented and can cause exception This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-11-05 14:57:29
|
Revision: 16456 http://jmol.svn.sourceforge.net/jmol/?rev=16456&view=rev Author: hansonr Date: 2011-11-05 14:57:22 +0000 (Sat, 05 Nov 2011) Log Message: ----------- version=12.2.5_dev # bug fix: contact() function not working when typed from console # bug fix: set axesOrientationRasmol not working properly (since 11.5.51) # bug fix: frame x.y - y.z not working Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/script/ScriptCompilationTokenParser.java branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties branches/v12_2/Jmol/src/org/jmol/viewer/Viewer.java Modified: branches/v12_2/Jmol/src/org/jmol/script/ScriptCompilationTokenParser.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/script/ScriptCompilationTokenParser.java 2011-11-05 14:54:53 UTC (rev 16455) +++ branches/v12_2/Jmol/src/org/jmol/script/ScriptCompilationTokenParser.java 2011-11-05 14:57:22 UTC (rev 16456) @@ -625,7 +625,7 @@ if (!isWithin) { tok = -1; for (int i = itokenInfix; tok != Token.nada; i++) { - switch (tokAt(i)) { + switch (tok = tokAt(i)) { case Token.comma: tok = Token.nada; break; Modified: branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-11-05 14:54:53 UTC (rev 16455) +++ branches/v12_2/Jmol/src/org/jmol/script/ScriptEvaluator.java 2011-11-05 14:57:22 UTC (rev 16456) @@ -9807,12 +9807,12 @@ continue; case Token.y: haveRotation = true; - rotAxis.set(0, (axesOrientationRasmol && !isMolecular ? -direction - : direction), 0); + rotAxis.set(0, direction, 0); continue; case Token.z: haveRotation = true; - rotAxis.set(0, 0, direction); + rotAxis.set(0, 0,(axesOrientationRasmol && !isMolecular ? -direction + : direction)); continue; // 11.6 options Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-05 14:54:53 UTC (rev 16455) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-05 14:57:22 UTC (rev 16456) @@ -4,6 +4,10 @@ version=12.2.5_dev +# bug fix: contact() function not working when typed from console +# bug fix: set axesOrientationRasmol not working properly (since 11.5.51) +# bug fix: frame x.y - y.z not working + # ------------------------------------------------------------------------------ #version=12.2.4 Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Viewer.java 2011-11-05 14:54:53 UTC (rev 16455) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Viewer.java 2011-11-05 14:57:22 UTC (rev 16456) @@ -6850,8 +6850,9 @@ * left-handed setting this flag makes Jmol mimic this behavior * * All versions of Jmol prior to 11.5.51 incompletely implement this flag. - * Really all it is just a flag to tell Eval to flip the sign of the Y - * rotation when specified specifically as "rotate/spin y 30". + * All versions of Jmol between 11.5.51 and 12.2.4 incorrectly implement this flag. + * Really all it is just a flag to tell Eval to flip the sign of the Z + * rotation when specified specifically as "rotate/spin Z 30". * * In principal, we could display the axis opposite as well, but that is * only aesthetic and not at all justified if the axis is molecular. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-11-05 16:23:01
|
Revision: 16457 http://jmol.svn.sourceforge.net/jmol/?rev=16457&view=rev Author: hansonr Date: 2011-11-05 16:22:54 +0000 (Sat, 05 Nov 2011) Log Message: ----------- version=12.2.5_dev # bug fix: set PdbAddHydrogens does not transfer C atomSymmetry to H atoms Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/modelset/Atom.java branches/v12_2/Jmol/src/org/jmol/modelsetbio/Resolver.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties Modified: branches/v12_2/Jmol/src/org/jmol/modelset/Atom.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/modelset/Atom.java 2011-11-05 14:57:22 UTC (rev 16456) +++ branches/v12_2/Jmol/src/org/jmol/modelset/Atom.java 2011-11-05 16:22:54 UTC (rev 16457) @@ -57,6 +57,10 @@ Group group; private BitSet atomSymmetry; + public void setAtomSymmetry(BitSet bsSymmetry) { + atomSymmetry = bsSymmetry; + } + int atomSite; private float userDefinedVanDerWaalRadius; @@ -1431,4 +1435,5 @@ } return false; } + } Modified: branches/v12_2/Jmol/src/org/jmol/modelsetbio/Resolver.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/modelsetbio/Resolver.java 2011-11-05 14:57:22 UTC (rev 16456) +++ branches/v12_2/Jmol/src/org/jmol/modelsetbio/Resolver.java 2011-11-05 16:22:54 UTC (rev 16457) @@ -572,6 +572,7 @@ modelSet.setAtomName(iAtom, name); atoms[iAtom].set(pt); modelSet.setAtomNumber(iAtom, ++maxSerial); + atoms[iAtom].setAtomSymmetry(atoms[iTo].getAtomSymmetry()); modelLoader.undeleteAtom(iAtom); modelSet.bondAtoms(atoms[iTo], atoms[iAtom], JmolEdge.BOND_COVALENT_SINGLE, Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-05 14:57:22 UTC (rev 16456) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-05 16:22:54 UTC (rev 16457) @@ -4,6 +4,7 @@ version=12.2.5_dev +# bug fix: set PdbAddHydrogens does not transfer C atomSymmetry to H atoms # bug fix: contact() function not working when typed from console # bug fix: set axesOrientationRasmol not working properly (since 11.5.51) # bug fix: frame x.y - y.z not working This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2011-11-14 04:45:33
|
Revision: 16468 http://jmol.svn.sourceforge.net/jmol/?rev=16468&view=rev Author: hansonr Date: 2011-11-14 04:45:26 +0000 (Mon, 14 Nov 2011) Log Message: ----------- version=12.2.5 # bug fix: isosurface scale 0.5 plane... broken if no atoms present # bug fix: isosurface color density broken # bug fix: set PdbAddHydrogens does not transfer C atomSymmetry to H atoms # bug fix: contact() function not working when typed from console # bug fix: set axesOrientationRasmol not working properly (since 11.5.51) # bug fix: frame x.y - y.z not working Modified Paths: -------------- branches/v12_2/Jmol/src/org/jmol/jvxl/data/JvxlData.java branches/v12_2/Jmol/src/org/jmol/jvxl/readers/AtomDataReader.java branches/v12_2/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceReader.java branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties branches/v12_2/Jmol/src/org/jmol/viewer/StateManager.java Modified: branches/v12_2/Jmol/src/org/jmol/jvxl/data/JvxlData.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/jvxl/data/JvxlData.java 2011-11-14 04:44:38 UTC (rev 16467) +++ branches/v12_2/Jmol/src/org/jmol/jvxl/data/JvxlData.java 2011-11-14 04:45:26 UTC (rev 16468) @@ -96,6 +96,7 @@ public boolean isJvxlPrecisionColor; public boolean jvxlDataIsColorMapped; public boolean jvxlDataIs2dContour; + public boolean jvxlDataIsColorDensity; public boolean isColorReversed; public int edgeFractionBase = JvxlCoder.defaultEdgeFractionBase; Modified: branches/v12_2/Jmol/src/org/jmol/jvxl/readers/AtomDataReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/jvxl/readers/AtomDataReader.java 2011-11-14 04:44:38 UTC (rev 16467) +++ branches/v12_2/Jmol/src/org/jmol/jvxl/readers/AtomDataReader.java 2011-11-14 04:45:26 UTC (rev 16468) @@ -245,7 +245,11 @@ } firstNearbyAtom = myAtomCount; Logger.info(myAtomCount + " atoms will be used in the surface calculation"); - + + if (myAtomCount == 0) { + setBoundingBox(new Point3f(10, 10, 10), 0); + setBoundingBox(new Point3f(-10, -10, -10), 0); + } for (int i = 0; i < myAtomCount; i++) setBoundingBox(atomXyz[i], getRadii ? atomRadius[i] + 0.5f : 0); if (!Float.isNaN(params.scale)) { Modified: branches/v12_2/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java 2011-11-14 04:44:38 UTC (rev 16467) +++ branches/v12_2/Jmol/src/org/jmol/jvxl/readers/JvxlXmlReader.java 2011-11-14 04:45:26 UTC (rev 16468) @@ -238,7 +238,7 @@ && (params.isBicolorMap || XmlReader.getXmlAttrib(data, "colorMapped").equals("true"))); //next is for information only -- will be superceded by "encoding" attribute of jvxlColorData jvxlData.isJvxlPrecisionColor = XmlReader.getXmlAttrib(data, "precisionColor").equals("true"); - jvxlData.colorDensity = params.colorDensity = (params.colorRgb == Integer.MIN_VALUE && XmlReader.getXmlAttrib(data, "colorDensity").equals("true")); + jvxlData.jvxlDataIsColorDensity = params.colorDensity = (params.colorRgb == Integer.MIN_VALUE && XmlReader.getXmlAttrib(data, "colorDensity").equals("true")); s = XmlReader.getXmlAttrib(data, "allowVolumeRender"); jvxlData.allowVolumeRender = params.allowVolumeRender = (s.length() == 0 || s.equalsIgnoreCase("true")); s = XmlReader.getXmlAttrib(data, "plane"); Modified: branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java 2011-11-14 04:44:38 UTC (rev 16467) +++ branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceGenerator.java 2011-11-14 04:45:26 UTC (rev 16468) @@ -1110,7 +1110,7 @@ surfaceReader.colorIsosurface(); params.state = Parameters.STATE_DATA_COLORED; } - if (jvxlData.colorDensity) { + if (jvxlData.jvxlDataIsColorDensity) { params.state = Parameters.STATE_DATA_COLORED; } if (params.colorBySign || params.isBicolorMap) { Modified: branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceReader.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceReader.java 2011-11-14 04:44:38 UTC (rev 16467) +++ branches/v12_2/Jmol/src/org/jmol/jvxl/readers/SurfaceReader.java 2011-11-14 04:45:26 UTC (rev 16468) @@ -303,6 +303,7 @@ protected boolean jvxlDataIsColorMapped; protected boolean jvxlDataIsPrecisionColor; protected boolean jvxlDataIs2dContour; + protected boolean jvxlDataIsColorDensity; protected float jvxlCutoff; protected int jvxlNSurfaceInts; protected char cJvxlEdgeNaN; @@ -404,6 +405,7 @@ jvxlData.colorFractionRange = colorFractionRange; jvxlData.jvxlDataIs2dContour = jvxlDataIs2dContour; jvxlData.jvxlDataIsColorMapped = jvxlDataIsColorMapped; + jvxlData.jvxlDataIsColorDensity = jvxlDataIsColorDensity; jvxlData.isXLowToHigh = isXLowToHigh; jvxlData.vertexDataOnly = vertexDataOnly; jvxlData.saveVertexCount = 0; Modified: branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-14 04:44:38 UTC (rev 16467) +++ branches/v12_2/Jmol/src/org/jmol/viewer/Jmol.properties 2011-11-14 04:45:26 UTC (rev 16468) @@ -2,8 +2,10 @@ # NOTE: Generally only bug fixes should be entered here. # NOTE: New features should be introduced in the trunk version 12.3.x -version=12.2.5_dev +version=12.2.5 +# bug fix: isosurface scale 0.5 plane... broken if no atoms present +# bug fix: isosurface color density broken # bug fix: set PdbAddHydrogens does not transfer C atomSymmetry to H atoms # bug fix: contact() function not working when typed from console # bug fix: set axesOrientationRasmol not working properly (since 11.5.51) Modified: branches/v12_2/Jmol/src/org/jmol/viewer/StateManager.java =================================================================== --- branches/v12_2/Jmol/src/org/jmol/viewer/StateManager.java 2011-11-14 04:44:38 UTC (rev 16467) +++ branches/v12_2/Jmol/src/org/jmol/viewer/StateManager.java 2011-11-14 04:45:26 UTC (rev 16468) @@ -945,6 +945,7 @@ setParameterValue("vibrationPeriod", vibrationPeriod); setParameterValue("vibrationScale", vibrationScale); setParameterValue("visualRange", visualRange); + setParameterValue("waitForMoveTo", waitForMoveTo); setParameterValue("wireframeRotation", wireframeRotation); setParameterValue("zDepth", zDepth); setParameterValue("zeroBasedXyzRasmol", zeroBasedXyzRasmol); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |