From: Miguel <mig...@us...> - 2005-04-24 23:36:29
|
Update of /cvsroot/jmol/Jmol/src/org/jmol/viewer In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29207/src/org/jmol/viewer Modified Files: Eval.java SticksRenderer.java StyleManager.java Token.java Viewer.java Log Message: implemented solid hydrogen bonds Index: Eval.java =================================================================== RCS file: /cvsroot/jmol/Jmol/src/org/jmol/viewer/Eval.java,v retrieving revision 1.28 retrieving revision 1.29 diff -u -r1.28 -r1.29 --- Eval.java 21 Mar 2005 21:16:56 -0000 1.28 +++ Eval.java 24 Apr 2005 23:36:19 -0000 1.29 @@ -2885,17 +2885,24 @@ void setHbonds() throws ScriptException { checkLength3(); + boolean bool = false; boolean hbondsBackbone = false; switch(statement[2].tok) { case Token.backbone: - hbondsBackbone = true; - break; + bool = true; + // fall into case Token.sidechain: + viewer.setHbondsBackbone(bool); + break; + case Token.solid: + bool = true; + // falll into + case Token.dotted: + viewer.setHbondsSolid(bool); break; default: invalidArgument(); } - viewer.setHbondsBackbone(hbondsBackbone); } void setScale3d() throws ScriptException { Index: SticksRenderer.java =================================================================== RCS file: /cvsroot/jmol/Jmol/src/org/jmol/viewer/SticksRenderer.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- SticksRenderer.java 10 Feb 2005 21:19:52 -0000 1.5 +++ SticksRenderer.java 24 Apr 2005 23:36:19 -0000 1.6 @@ -41,6 +41,7 @@ boolean ssbondsBackbone; boolean hbondsBackbone; boolean bondsBackbone; + boolean hbondsSolid; Atom atomA, atomB; int xA, yA, zA; @@ -75,6 +76,7 @@ ssbondsBackbone = viewer.getSsbondsBackbone(); hbondsBackbone = viewer.getHbondsBackbone(); bondsBackbone = hbondsBackbone | ssbondsBackbone; + hbondsSolid = viewer.getHbondsSolid(); Bond[] bonds = frame.bonds; int displayModelIndex = this.displayModelIndex; @@ -163,7 +165,12 @@ break; default: if ((bondOrder & JmolConstants.BOND_HYDROGEN_MASK) != 0) { - renderHbondDashed(); + if (hbondsSolid) { + bondOrder = 1; + renderCylinder(0); + } else { + renderHbondDashed(); + } break; } } Index: StyleManager.java =================================================================== RCS file: /cvsroot/jmol/Jmol/src/org/jmol/viewer/StyleManager.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- StyleManager.java 24 Jan 2005 19:43:24 -0000 1.6 +++ StyleManager.java 24 Apr 2005 23:36:19 -0000 1.7 @@ -151,6 +151,11 @@ this.hbondsBackbone = hbondsBackbone; } + boolean hbondsSolid; + void setHbondsSolid(boolean hbondsSolid) { + this.hbondsSolid = hbondsSolid; + } + /**************************************************************** * label related ****************************************************************/ Index: Token.java =================================================================== RCS file: /cvsroot/jmol/Jmol/src/org/jmol/viewer/Token.java,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- Token.java 20 Mar 2005 15:29:07 -0000 1.17 +++ Token.java 24 Apr 2005 23:36:19 -0000 1.18 @@ -348,6 +348,7 @@ final static int edges = misc | 43; final static int noedges = misc | 44; final static int frontedges = misc | 45; + final static int solid = misc | 45; final static int amino = predefinedset | 0; final static int hetero = predefinedset | 1 | setparam; @@ -655,6 +656,7 @@ "edges", new Token(edges, "edges"), "noedges", new Token(noedges, "noedges"), "frontedges", new Token(frontedges, "frontedges"), + "solid", new Token(solid, "solid"), }; static Hashtable map = new Hashtable(); Index: Viewer.java =================================================================== RCS file: /cvsroot/jmol/Jmol/src/org/jmol/viewer/Viewer.java,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- Viewer.java 23 Mar 2005 00:36:49 -0000 1.24 +++ Viewer.java 24 Apr 2005 23:36:19 -0000 1.25 @@ -1633,6 +1633,14 @@ return styleManager.hbondsBackbone; } + void setHbondsSolid(boolean hbondsSolid) { + styleManager.setHbondsSolid(hbondsSolid); + } + + boolean getHbondsSolid() { + return styleManager.hbondsSolid; + } + public void setMarBond(short marBond) { styleManager.setMarBond(marBond); setShapeSize(JmolConstants.SHAPE_STICKS, marBond * 2); |