From: Miguel <mig...@us...> - 2005-09-25 19:12:08
|
Update of /cvsroot/jmol/Jmol/src/org/jmol/viewer In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26679/src/org/jmol/viewer Modified Files: SasGem.java Log Message: diddling Index: SasGem.java =================================================================== RCS file: /cvsroot/jmol/Jmol/src/org/jmol/viewer/SasGem.java,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- SasGem.java 25 Sep 2005 19:06:20 -0000 1.14 +++ SasGem.java 25 Sep 2005 19:11:57 -0000 1.15 @@ -44,11 +44,6 @@ SasFlattenedPointList fpl = new SasFlattenedPointList(); - int projectedCount = 0; - short[] projectedVertexes = new short[64]; - float[] projectedAngles = new float[64]; - float[] projectedDistances = new float[64]; - final Vector3f[] geodesicVertexVectors; final int geodesicVertexCount; final int geodesicFaceCount; @@ -273,7 +268,6 @@ float radiansPerAngstrom = PI / radius; - projectedCount = 0; fpl.reset(); int[] theEdgeMap = null; switch (method) { @@ -294,29 +288,13 @@ float angle = calcAngleInThePlane(vector0T, vector90T, projectedVectorT); fpl.add((short)v, angle, distance * radiansPerAngstrom); - addProjectedPoint((short) v, angle, distance * radiansPerAngstrom); } fpl.sort(); - sortProjectedVertexes(); - if (fullTorus) { + if (fullTorus) fpl.duplicateFirstPointPlus2Pi(); - duplicateFirstProjectedGeodesicPoint(); - } - checkFpl(); return true; } - void checkFpl() { - if (fpl.count != projectedCount) - throw new NullPointerException(); - for (int i = fpl.count; --i >= 0; ) { - if (fpl.angles[i] != projectedAngles[i] || - fpl.distances[i] != projectedDistances[i] || - fpl.vertexes[i] != projectedVertexes[i]) - throw new NullPointerException(); - } - } - void calcClippingPlaneCenter(Point3f axisPoint, Vector3f axisUnitVector, Point3f planePoint, Point3f planeCenterPoint) { vectorT.sub(axisPoint, planePoint); @@ -324,18 +302,6 @@ planeCenterPoint.scaleAdd(-distance, axisUnitVector, axisPoint); } - void addProjectedPoint(short vertex, float angle, float radians) { - if (projectedCount == projectedVertexes.length) { - projectedVertexes = Util.doubleLength(projectedVertexes); - projectedAngles = Util.doubleLength(projectedAngles); - projectedDistances = Util.doubleLength(projectedDistances); - } - projectedVertexes[projectedCount] = vertex; - projectedAngles[projectedCount] = angle; - projectedDistances[projectedCount] = radians; - ++projectedCount; - } - static float calcAngleInThePlane(Vector3f radialVector0, Vector3f radialVector90, Vector3f vectorInQuestion) { @@ -346,27 +312,6 @@ return angle; } - void sortProjectedVertexes() { - int projectedCount = this.projectedCount; - short[] projectedVertexes = this.projectedVertexes; - float[] projectedAngles = this.projectedAngles; - float[] projectedDistances = this.projectedDistances; - for (int i = projectedCount; --i > 0; ) - for (int j = i; --j >= 0; ) - if (projectedAngles[j] > projectedAngles[i]) { - Util.swap(projectedAngles, i, j); - Util.swap(projectedDistances, i, j); - Util.swap(projectedVertexes, i, j); - } - } - - void duplicateFirstProjectedGeodesicPoint() { - System.out.println("duplicateFirstProjectedGeodesicPoint"); - addProjectedPoint(projectedVertexes[0], - projectedAngles[0] + 2*PI, - projectedDistances[0]); - } - float angleABC(float xA, float yA, float xB, float yB, float xC, float yC) { double vxAB = xA - xB; double vyAB = yA - yB; |