From: Michael T H. <mic...@us...> - 2004-01-10 23:52:23
|
Update of /cvsroot/jmol/Jmol/src/org/openscience/jmol/viewer/datamodel In directory sc8-pr-cvs1:/tmp/cvs-serv15281/src/org/openscience/jmol/viewer/datamodel Modified Files: Atom.java Frame.java Log Message: implemented ionic bonding radii changed ModelAdapter to return radii in int MilliAngstroms Index: Atom.java =================================================================== RCS file: /cvsroot/jmol/Jmol/src/org/openscience/jmol/viewer/datamodel/Atom.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- Atom.java 10 Jan 2004 23:13:05 -0000 1.18 +++ Atom.java 10 Jan 2004 23:52:19 -0000 1.19 @@ -44,7 +44,7 @@ short x, y, z; short diameter; public byte atomicNumber; - byte atomicCharge; + public byte atomicCharge; byte styleAtom; short marAtom; short colixAtom; @@ -323,12 +323,12 @@ return frame.viewer.getVanderwaalsMar(this) / 1000f; } - public short getCovalentMar() { - return frame.viewer.getCovalentMar(this); + public short getBondingMar() { + return frame.viewer.getBondingMar(this); } - public float getCovalentRadiusFloat() { - return frame.viewer.getCovalentMar(this) / 1000f; + public float getBondingRadiusFloat() { + return frame.viewer.getBondingMar(this) / 1000f; } public short getColix() { Index: Frame.java =================================================================== RCS file: /cvsroot/jmol/Jmol/src/org/openscience/jmol/viewer/datamodel/Frame.java,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- Frame.java 10 Jan 2004 15:05:49 -0000 1.33 +++ Frame.java 10 Jan 2004 23:52:19 -0000 1.34 @@ -37,9 +37,9 @@ public JmolViewer viewer; public FrameRenderer frameRenderer; - // the maximum CovalentRadius seen in this set of atoms + // the maximum BondingRadius seen in this set of atoms // used in autobonding - float maxCovalentRadius = 0; + float maxBondingRadius = 0; float maxVanderwaalsRadius = 0; // whether or not this frame has any protein properties int modelType; @@ -96,9 +96,9 @@ htAtomMap.put(clientAtom, atom); if (bspf != null) bspf.addTuple(atom.getModelID(), atom); - float covalentRadius = atom.getCovalentRadiusFloat(); - if (covalentRadius > maxCovalentRadius) - maxCovalentRadius = covalentRadius; + float bondingRadius = atom.getBondingRadiusFloat(); + if (bondingRadius > maxBondingRadius) + maxBondingRadius = bondingRadius; float vdwRadius = atom.getVanderwaalsRadiusFloat(); if (vdwRadius > maxVanderwaalsRadius) maxVanderwaalsRadius = vdwRadius; @@ -722,16 +722,16 @@ for (int i = atomCount; --i >= 0; ) { Atom atom = atoms[i]; // Covalent bonds - float myCovalentRadius = atom.getCovalentRadiusFloat(); + float myBondingRadius = atom.getBondingRadiusFloat(); float searchRadius = - myCovalentRadius + maxCovalentRadius + bondTolerance; + myBondingRadius + maxBondingRadius + bondTolerance; Bspt.SphereIterator iter = bspf.getSphereIterator(atom.getModelID()); iter.initializeHemisphere(atom, searchRadius); while (iter.hasMoreElements()) { Atom atomNear = (Atom)iter.nextElement(); if (atomNear != atom) { - int order = getBondOrder(atom, myCovalentRadius, - atomNear, atomNear.getCovalentRadiusFloat(), + int order = getBondOrder(atom, myBondingRadius, + atomNear, atomNear.getBondingRadiusFloat(), iter.foundDistance2()); if (order > 0) addBond(atom.bondMutually(atomNear, order)); @@ -746,14 +746,14 @@ } } - private int getBondOrder(Atom atomA, float covalentRadiusA, - Atom atomB, float covalentRadiusB, + private int getBondOrder(Atom atomA, float bondingRadiusA, + Atom atomB, float bondingRadiusB, float distance2) { - // System.out.println(" radiusA=" + covalentRadiusA + - // " radiusB=" + covalentRadiusB + + // System.out.println(" radiusA=" + bondingRadiusA + + // " radiusB=" + bondingRadiusB + // " distance2=" + distance2 + // " tolerance=" + bondTolerance); - float maxAcceptable = covalentRadiusA + covalentRadiusB + bondTolerance; + float maxAcceptable = bondingRadiusA + bondingRadiusB + bondTolerance; float maxAcceptable2 = maxAcceptable * maxAcceptable; if (distance2 < minBondDistance2) { //System.out.println("less than minBondDistance"); |