From: <ha...@us...> - 2009-05-29 19:34:37
|
Revision: 10917 http://jmol.svn.sourceforge.net/jmol/?rev=10917&view=rev Author: hansonr Date: 2009-05-29 19:34:28 +0000 (Fri, 29 May 2009) Log Message: ----------- Modified Paths: -------------- trunk/Jmol/src/org/jmol/modelset/LabelToken.java Modified: trunk/Jmol/src/org/jmol/modelset/LabelToken.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-05-29 19:17:13 UTC (rev 10916) +++ trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-05-29 19:34:28 UTC (rev 10917) @@ -45,8 +45,29 @@ * involved, then calls were made for every atom to find the data set and return its * value. Now you can still do that, but the Jmol code doesn't. * - * Instead, we + * Instead, we now first compile a set of tokens -- either pure text or some + * sort of %xxxx business. Generally we would alternate between these, so the + * compiler is set up to initialize an array that has 2n+1 elements, where n is the + * number of % signs in the string. This is guaranteed to be more than really necessary. * + * Because we are working with tokens, we can go beyond the limiting A-Za-z business + * that we had before. That still works, but now we can have any standard token be + * used in brackets: + * + * %n.m[xxxxx] + * + * This complements the + * + * %n.m{xxxxx} + * + * used for data. The brackets make for a nice-looking format: + * + * + * print {*}.bonds.label("%6[atomName]1 - %6[atomName]2 %3ORDER %6.2LENGTH") + * + * + * + * */ String text; @@ -213,7 +234,7 @@ break; } String propertyName = strFormat.substring(ich, ichClose); - Token token = Token.getTokenFromName(propertyName); + Token token = Token.getTokenFromName(propertyName.toLowerCase()); if (token != null && isLabelPropertyTok(token.tok)) lt.tok = token.tok; ich = ichClose + 1; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2009-05-29 19:36:28
|
Revision: 10918 http://jmol.svn.sourceforge.net/jmol/?rev=10918&view=rev Author: hansonr Date: 2009-05-29 19:36:20 +0000 (Fri, 29 May 2009) Log Message: ----------- version=11.7.39_dev # code: atom label compiler modelset.LabelToken # # new feature: label %[....] where .... is one of: # %[altloc] %A # %[atomIndex] %D # %[atomName] %a # %[atomno] %i # %[atomType] %B # %[atomX] %x # %[atomY] %y # %[atomZ] %z # %[bondcount] # %[chain] %c # %[chain] %s # %[element] %e # %[elemno] %l # %[formalCharge] %C # %[fxyz] # %[fx] %X # %[fy] %Y # %[fz] %Z # %[group] %n # %[group1] %m # %[groupID] # %[groupIndex] %G # %[identify] %U # %[insertion] %E # %[model] %M # %[molecule] %N # %[occupancy] % # %[partialCharge] %P # %[phi] %f # %[polymerlength] %L # %[psi] %p # %[radius] %I # %[resno] %R # %[sequence] %r # %[site] %S # %[straightness] %T # %[strucno] (1,2,3,...) # %[structure] (helix,sheet,turn,none) # %[surfaceDistance] %u # %[symmetry] %o # %[temperature] %b, %t # %[uxyz] # %[ux] %ux # %[uy] %uy # %[uz] %uz # %[valence] # %[vanderwaals] %V # %[vxyz] %v # %[vx] %vx # %[vy] %vy # %[vz] %vz # # this leaves only three label abbreviations without equivalents: # # %g // getSelectedGroupIndexWithinChain() # %q // occupancy * 100 # %W // identifier and XYZ coord # bug fix: selected connected(hbond) not working. Modified Paths: -------------- trunk/Jmol/src/org/jmol/modelset/LabelToken.java Modified: trunk/Jmol/src/org/jmol/modelset/LabelToken.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-05-29 19:34:28 UTC (rev 10917) +++ trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-05-29 19:36:20 UTC (rev 10918) @@ -65,9 +65,10 @@ * * print {*}.bonds.label("%6[atomName]1 - %6[atomName]2 %3ORDER %6.2LENGTH") * + * [Note that the %ORDER and %LENGTH variables are bond labeling options, and + * the 1 and 2 after %[xxx] indicate which atom in involved. * * - * */ String text; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2009-06-02 13:26:46
|
Revision: 10941 http://jmol.svn.sourceforge.net/jmol/?rev=10941&view=rev Author: hansonr Date: 2009-06-02 13:26:44 +0000 (Tue, 02 Jun 2009) Log Message: ----------- version=11.7.40 # bug fix: various tweaks of atom properties business. Modified Paths: -------------- trunk/Jmol/src/org/jmol/modelset/LabelToken.java Modified: trunk/Jmol/src/org/jmol/modelset/LabelToken.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-06-02 13:26:17 UTC (rev 10940) +++ trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-06-02 13:26:44 UTC (rev 10941) @@ -30,7 +30,6 @@ import javax.vecmath.Tuple3f; -import org.jmol.util.Escape; import org.jmol.util.TextFormat; import org.jmol.viewer.Token; import org.jmol.viewer.Viewer; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2009-06-02 13:27:19
|
Revision: 10940 http://jmol.svn.sourceforge.net/jmol/?rev=10940&view=rev Author: hansonr Date: 2009-06-02 13:26:17 +0000 (Tue, 02 Jun 2009) Log Message: ----------- version=11.7.40 # bug fix: various tweaks of atom properties business. Modified Paths: -------------- trunk/Jmol/src/org/jmol/modelset/LabelToken.java Modified: trunk/Jmol/src/org/jmol/modelset/LabelToken.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-06-02 13:15:54 UTC (rev 10939) +++ trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-06-02 13:26:17 UTC (rev 10940) @@ -30,6 +30,7 @@ import javax.vecmath.Tuple3f; +import org.jmol.util.Escape; import org.jmol.util.TextFormat; import org.jmol.viewer.Token; import org.jmol.viewer.Viewer; @@ -141,6 +142,7 @@ Token.adpmin, Token.atomID, Token.bondcount, + Token.color, Token.groupID, Token.covalent, Token.file, @@ -341,6 +343,9 @@ strT = "" + (indices == null ? atom.atomIndex : indices[atom.atomIndex]); break; + case Token.color: + ptT = Atom.atomPropertyTuple(atom, t.tok); + break; case Token.data: floatT = (t.data != null ? t.data[atom.atomIndex] : Float.NaN); if (Float.isNaN(floatT)) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2009-06-03 05:38:47
|
Revision: 10948 http://jmol.svn.sourceforge.net/jmol/?rev=10948&view=rev Author: hansonr Date: 2009-06-03 05:38:46 +0000 (Wed, 03 Jun 2009) Log Message: ----------- version=11.7.40 # bug fix: various tweaks of atom properties business. Modified Paths: -------------- trunk/Jmol/src/org/jmol/modelset/LabelToken.java Modified: trunk/Jmol/src/org/jmol/modelset/LabelToken.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-06-03 05:24:30 UTC (rev 10947) +++ trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-06-03 05:38:46 UTC (rev 10948) @@ -452,7 +452,8 @@ Atom[] atoms = measurement.modelSet.atoms; int[] indices = measurement.getCountPlusIndices(); for (int i = indices[0]; i >= 1;--i) - formatLabel(atoms[indices[i]], null, tokens, (char)('0' + i), null); + if (indices[i] >= 0) + formatLabel(atoms[indices[i]], null, tokens, (char)('0' + i), null); label = getLabel(tokens); return (label == null ? "" : label); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ha...@us...> - 2009-06-11 15:01:01
|
Revision: 11004 http://jmol.svn.sourceforge.net/jmol/?rev=11004&view=rev Author: hansonr Date: 2009-06-11 15:00:59 +0000 (Thu, 11 Jun 2009) Log Message: ----------- version=11.7.42_dev # new feature: format("sprintf format", a, b, c, ...) # new feature: {xxxx}.label("") shows current label # new feature: [array].sort # new feature: [array].reverse # new feature: [array].min # new feature: [array].max # new feature: [array].average # new feature: [array].stddev # new feature: (value).label("C++ printf format") Modified Paths: -------------- trunk/Jmol/src/org/jmol/modelset/LabelToken.java Modified: trunk/Jmol/src/org/jmol/modelset/LabelToken.java =================================================================== --- trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-06-11 14:35:22 UTC (rev 11003) +++ trunk/Jmol/src/org/jmol/modelset/LabelToken.java 2009-06-11 15:00:59 UTC (rev 11004) @@ -460,16 +460,21 @@ } public String format(float floatT, String strT, Tuple3f ptT) { - if (!Float.isNaN(floatT)) + if (!Float.isNaN(floatT)) { return TextFormat.format(floatT, width, precision, alignLeft, zeroPad); - else if (strT != null) + } else if (strT != null) { return TextFormat.format(strT, width, precision, alignLeft, zeroPad); - else if (ptT != null) + } else if (ptT != null) { + if (width == 0 && precision == Integer.MAX_VALUE) { + width = 6; + precision = 2; + } return TextFormat.format(ptT.x, width, precision, false, false) - + " " + TextFormat.format(ptT.y, width, precision, false, false) - + " " + TextFormat.format(ptT.z, width, precision, false, false); - else + + TextFormat.format(ptT.y, width, precision, false, false) + + TextFormat.format(ptT.z, width, precision, false, false); + } else { return text; + } } public static void setValues(LabelToken[] tokens, Hashtable values) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |