From 3d6305938a0fb4aab180c98508d5356f7fbd3acf Mon Sep 17 00:00:00 2001 From: Steve Date: Thu, 17 Feb 2011 11:24:39 +0000 Subject: updated planar to adjust mass, it was broken --- src/tesseract/menuitems/PlanarPolygonMenuItem.java | 3 ++- src/tesseract/objects/Ellipsoid.java | 7 +++---- src/tesseract/objects/PlanarPolygon.java | 6 +++++- 3 files changed, 10 insertions(+), 6 deletions(-) (limited to 'src/tesseract') diff --git a/src/tesseract/menuitems/PlanarPolygonMenuItem.java b/src/tesseract/menuitems/PlanarPolygonMenuItem.java index e85cfbc..073ba80 100644 --- a/src/tesseract/menuitems/PlanarPolygonMenuItem.java +++ b/src/tesseract/menuitems/PlanarPolygonMenuItem.java @@ -62,6 +62,7 @@ public class PlanarPolygonMenuItem extends TesseractMenuItem { }); enterButton.addActionListener(new ActionListener() { + final int divs = 5; public void actionPerformed(final ActionEvent event) { String string = getPositionField().getText(); Vector3f pos = parseVector(string); @@ -76,7 +77,7 @@ public class PlanarPolygonMenuItem extends TesseractMenuItem { setMass(mass); if (event.getSource() == enterButton) { - myWorld.addObject(new PlanarPolygon(getPosition(), getRadius())); + myWorld.addObject(new PlanarPolygon(getPosition(), getMass(), getRadius(), divs)); params.dispose(); } } diff --git a/src/tesseract/objects/Ellipsoid.java b/src/tesseract/objects/Ellipsoid.java index ac8a552..c3199ab 100644 --- a/src/tesseract/objects/Ellipsoid.java +++ b/src/tesseract/objects/Ellipsoid.java @@ -110,10 +110,9 @@ public class Ellipsoid extends PhysicalObject { private TransformGroup createDefaultEllipsoid(final float radius, final float a, final float b, final float c) { - Sphere sphere = new Sphere(radius, - new Sphere().getPrimitiveFlags() - | Sphere.ENABLE_GEOMETRY_PICKING, - DEFAULT_DIVISIONS); + Sphere sphere = new Sphere(radius, new Sphere().getPrimitiveFlags(), DEFAULT_DIVISIONS); + // | Sphere.ENABLE_GEOMETRY_PICKING, + // DEFAULT_DIVISIONS); Transform3D tmp = new Transform3D(); tmp.set(new Matrix3f(a, 0.0f, 0.0f, 0.0f, b, 0.0f, 0.0f, 0.0f, c)); TransformGroup tg = new TransformGroup(tmp); diff --git a/src/tesseract/objects/PlanarPolygon.java b/src/tesseract/objects/PlanarPolygon.java index edc56b2..0abda1b 100644 --- a/src/tesseract/objects/PlanarPolygon.java +++ b/src/tesseract/objects/PlanarPolygon.java @@ -19,6 +19,7 @@ import javax.media.j3d.Texture2D; import javax.media.j3d.Transform3D; import javax.media.j3d.TriangleFanArray; import javax.vecmath.Matrix3f; +import javax.vecmath.Matrix4f; import javax.vecmath.Point3f; import javax.vecmath.TexCoord2f; import javax.vecmath.Vector3f; @@ -46,6 +47,10 @@ public class PlanarPolygon extends PhysicalObject { private static final float DEFAULT_MASS = Float.POSITIVE_INFINITY; //private static final float DEFAULT_MASS = 6; + public Vector3f normal; + // Right-hand side of the plane equation: Ax + By + Cz = D + public float intercept; + /** * Number of divisions in the sphere. */ @@ -69,7 +74,6 @@ public class PlanarPolygon extends PhysicalObject { setShape(createShape(radius, divisions)); } - /** * Create a new Ellipsoid. * -- cgit v1.2.3