From: <ha...@us...> - 2017-03-25 22:38:57
|
Revision: 21454 http://sourceforge.net/p/jmol/code/21454 Author: hansonr Date: 2017-03-25 22:38:54 +0000 (Sat, 25 Mar 2017) Log Message: ----------- Jmol.___JmolVersion="14.10.0" // released 3/25/2017 new feature: x = {*}.find(smartsString,"map") -- returns an array of arrays of atom indices (0-based) -- indicates exact correlation between atoms in {*} and atoms of smartsString -- only unique sets of atoms are found, not every possibility -- for example: load $caffeine print {*}.find("*1*****1", "map").format("JSON") [ [ 0,2,4,6,11,12 ] ] new feature: SELECT @x where x is an array of integers or array of array of integers -- selects atoms from array rather than from a bitset -- note that variable must be used, as SELECT [1,2,3] would look for PDB group "1,2,3" -- for example: load $caffeine x = {*}.find("*1*****1", "map")[0] select @x 6 atoms selected new feature: DRAW polygon @face @points -- draws a filled polygon based on arrays of atom indices -- @face is an array of integers, not necessarily wound correctly -- @points is an atom bitset or an array of points (optional, defaults to {*} -- for example: load $p4 x = {*}.find("*1**1","map"); draw ID p4r polygon @{x[1]} color red draw ID p4b polygon @{x[2]} color blue draw ID p4y polygon @{x[3]} color yellow draw ID p4g polygon @{x[4]} color green new feature: DRAW polyhedron @faces @points -- draws sets of polygons based on arrays of atom indices -- @faces is an array of array of integers, not necessarily wound correctly -- @points is an atom bitset or an array of points (optional, defaults to {*} -- for example: load $caffeine draw polyhedron @{{*}.find("*1****1||*1*****1","map")} load $p4 draw ID p polyhedron @{{*}.find("*1**1","map")} color red new feature: POLYHEDRON ID xxx @faces @points -- @faces is an array of array of integers, not necessarily wound correctly -- @points is an atom bitset or an array of points (optional, defaults to {*} load $p4 polyhedra ID p4 @{{*}.find("*1**1","map")} new feature: 4-order bond in MOL file using 14 for bond order -- Jmol extension for MOL file format to allow 4-bond -- example: [Re2Cl8](2-) -- see https://en.wikipedia.org/wiki/Quadruple_bond new feature: 5-order bond in MOL file using 15 for bond order -- Jmol extension for MOL file format to allow 5-bond -- example: [Mo2Cl8](4-) -- see https://en.wikipedia.org/wiki/Quintuple_bond new feature: 6-order bond in MOL file using 16 for bond order -- Jmol extension for MOL file format to allow 6-bond -- example: Mo2 -- see https://en.wikipedia.org/wiki/Sextuple_bond new feature: load "=xxxx/dssr--xxx=yyy" -- allows adding specialized options to dssr -- --xxx=yyy added on to &opt= search item bug fix: DSSR fix for multi-model PDB file bug fix: DSSR - 4fe5 HPA ligand causes set backboneSteps true to fail bug fix: EXIT command with -n command line flag does not exit Jmol bug fix: echo renderer may not show correct font size bug fix: POLYHEDRA ID id OFFSET {x y z} broken bug fix: ScriptManager debug output being sent even if -i (silent) command line option set. Modified Paths: -------------- trunk/Jmol/src/org/jmol/dssx/DSSR1.java trunk/Jmol/src/org/jmol/modelsetbio/BasePair.java trunk/Jmol/src/org/jmol/script/ScriptEval.java trunk/Jmol/src/org/jmol/viewer/JC.java trunk/Jmol/src/org/jmol/viewer/Jmol.properties trunk/Jmol/src/org/jmol/viewer/Viewer.java Modified: trunk/Jmol/src/org/jmol/dssx/DSSR1.java =================================================================== --- trunk/Jmol/src/org/jmol/dssx/DSSR1.java 2017-03-25 20:45:05 UTC (rev 21453) +++ trunk/Jmol/src/org/jmol/dssx/DSSR1.java 2017-03-25 22:38:54 UTC (rev 21454) @@ -286,6 +286,8 @@ } private NucleicMonomer setRes(Atom atom) { + if (atom.group.getBioPolymerLength() == 0) + return null; NucleicMonomer m = (NucleicMonomer) atom.group; ((NucleicPolymer) m.bioPolymer).isDssrSet = true; return m; Modified: trunk/Jmol/src/org/jmol/modelsetbio/BasePair.java =================================================================== --- trunk/Jmol/src/org/jmol/modelsetbio/BasePair.java 2017-03-25 20:45:05 UTC (rev 21453) +++ trunk/Jmol/src/org/jmol/modelsetbio/BasePair.java 2017-03-25 22:38:54 UTC (rev 21454) @@ -13,6 +13,8 @@ public static BasePair add(Map<String, Object> info, NucleicMonomer g1, NucleicMonomer g2) { + if (g1 == null || g2 == null) + return null; // can happen if one of DSSR pair is not a monomer (HPA in 4fe5) BasePair bp = new BasePair(); bp.info = info; (bp.g1 = g1).addBasePair(bp); Modified: trunk/Jmol/src/org/jmol/script/ScriptEval.java =================================================================== --- trunk/Jmol/src/org/jmol/script/ScriptEval.java 2017-03-25 20:45:05 UTC (rev 21453) +++ trunk/Jmol/src/org/jmol/script/ScriptEval.java 2017-03-25 22:38:54 UTC (rev 21454) @@ -4640,7 +4640,7 @@ filename = filename.substring(0, pt); if ((pt = filename.indexOf(".")) >= 0) filename = filename.substring(0, pt); - if (JC.PDB_ANNOTATIONS.indexOf(";" + ext + ";") >= 0) { + if (JC.PDB_ANNOTATIONS.indexOf(";" + ext + ";") >= 0 || ext.startsWith("dssr--")) { if (filename.startsWith("=")) filename += ".cif"; filenames = (ext.equals("all") ? new String[] { filename, Modified: trunk/Jmol/src/org/jmol/viewer/JC.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/JC.java 2017-03-25 20:45:05 UTC (rev 21453) +++ trunk/Jmol/src/org/jmol/viewer/JC.java 2017-03-25 22:38:54 UTC (rev 21454) @@ -66,7 +66,7 @@ "cod", "http://www.crystallography.net/cod/cif/%c1/%c2%c3/%c4%c5/%FILE.cif", "nmr", "http://www.nmrdb.org/new_predictor?POST?molfile=", "nmrdb", "http://www.nmrdb.org/service/predictor?POST?molfile=", - "nmrdb13", "http://www.nmrdb.org/service/jsmol13c?POST?molfile=", + "nmrdb13", "http://www.nmrdb.o rg/service/jsmol13c?POST?molfile=", //"pdb", "http://ftp.wwpdb.org/pub/pdb/data/structures/divided/pdb/%c2%c3/pdb%file.ent.gz", // new Jmol 14.5.0 10/28/2015 "magndata", "http://webbdcrista1.ehu.es/magndata/mcif/%FILE.mcif", "mmtf", "https://mmtf.rcsb.org/full/%FILE", // new Jmol 14.5.4 4/2016 @@ -126,6 +126,7 @@ public final static String copyright = "(C) 2015 Jmol Development"; public final static String version; + public static String majorVersion; public final static String date; public final static int versionInt; @@ -150,8 +151,11 @@ bis = new BufferedInputStream(is); Properties props = new Properties(); props.load(bis); - tmpVersion = PT.trimQuotes(props.getProperty("Jmol.___JmolVersion", - tmpVersion)); + String s = props.getProperty("Jmol.___JmolVersion", + tmpVersion); + if (s != null && s.lastIndexOf("\"") > 0) + s = s.substring(0, s.lastIndexOf("\"") + 1); + tmpVersion = PT.trimQuotes(s); tmpDate = PT.trimQuotes(props.getProperty("Jmol.___JmolDate", tmpDate)); } catch (Exception e) { // Nothing to do @@ -180,11 +184,13 @@ // 012345678901234567890123456789 } version = (tmpVersion != null ? tmpVersion : "(Unknown_version)"); + majorVersion = (tmpVersion != null ? tmpVersion : "(Unknown_version)"); date = (tmpDate != null ? tmpDate : "(Unknown_date)"); // 11.9.999 --> 1109999 int v = -1; try { String s = version; + String major = ""; // Major number int i = s.indexOf("."); if (i < 0) { @@ -192,7 +198,7 @@ s = null; } if (s != null) { - v = 100000 * Integer.parseInt(s.substring(0, i)); + v = 100000 * Integer.parseInt(major = s.substring(0, i)); // Minor number s = s.substring(i + 1); @@ -202,7 +208,10 @@ s = null; } if (s != null) { - v += 1000 * Integer.parseInt(s.substring(0, i)); + String m = s.substring(0, i); + major += "." + m; + majorVersion = major; + v += 1000 * Integer.parseInt(m); // Revision number s = s.substring(i + 1); Modified: trunk/Jmol/src/org/jmol/viewer/Jmol.properties =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2017-03-25 20:45:05 UTC (rev 21453) +++ trunk/Jmol/src/org/jmol/viewer/Jmol.properties 2017-03-25 22:38:54 UTC (rev 21454) @@ -121,7 +121,12 @@ -- example: Mo2 -- see https://en.wikipedia.org/wiki/Sextuple_bond +new feature: load "=xxxx/dssr--xxx=yyy" + -- allows adding specialized options to dssr + -- --xxx=yyy added on to &opt= search item + bug fix: DSSR fix for multi-model PDB file +bug fix: DSSR - 4fe5 HPA ligand causes set backboneSteps true to fail bug fix: EXIT command with -n command line flag does not exit Jmol bug fix: echo renderer may not show correct font size bug fix: POLYHEDRA ID id OFFSET {x y z} broken @@ -7631,7 +7636,7 @@ new feature: set backboneSteps TRUE -- draws base pair steps between dssr-identified base pairs -TO HERE +>>>>> TO HERE TRANSCRIPTION/DNA 06-MAR-92 1D66 DNA RECOGNITION BY GAL4: STRUCTURE OF A PROTEIN/DNA COMPLEX Modified: trunk/Jmol/src/org/jmol/viewer/Viewer.java =================================================================== --- trunk/Jmol/src/org/jmol/viewer/Viewer.java 2017-03-25 20:45:05 UTC (rev 21453) +++ trunk/Jmol/src/org/jmol/viewer/Viewer.java 2017-03-25 22:38:54 UTC (rev 21454) @@ -3980,6 +3980,10 @@ id = name.substring(pt + 1); format = (pt > 6 ? name.substring(6) : "loops"); return PT.rep(g.resolveDataBase("rna3d", id, null), "%TYPE", format); + } else if (name.startsWith("*dssr--")) { + id = name.substring(pt + 1); + id = g.resolveDataBase("dssr", id, null); + return id +"%20" + PT.rep(name.substring(5, pt), " ", "%20"); } else if (name.startsWith("*dssr/")) { id = name.substring(pt + 1); return g.resolveDataBase("dssr", id, null); @@ -7831,7 +7835,7 @@ if (g.helpPath.indexOf("?") < 0) { if (what.length() > 0 && what.indexOf("?") != 0) what = "?search=" + PT.rep(what, " ", "%20"); - what += (what.length() == 0 ? "?ver=" : "&ver=") + JC.version; + what += (what.length() == 0 ? "?ver=" : "&ver=") + JC.majorVersion; } else { what = "&" + what; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |