From d1df88907d55240e79ee8597f6032a4c0de6b957 Mon Sep 17 00:00:00 2001 From: Steve Date: Sat, 12 Feb 2011 08:09:38 +0000 Subject: Added a gravity submenu (doesn't turn off yet) Added empty ChainLinkMenuItem class set the planar Poly to pos infinte mass for testing Particles fall through but others don't, if particles are big enough they collide though --- src/tesseract/objects/Ellipsoid.java | 3 ++- src/tesseract/objects/Particle.java | 8 ++++++-- src/tesseract/objects/PlanarPolygon.java | 4 ++-- 3 files changed, 10 insertions(+), 5 deletions(-) (limited to 'src/tesseract/objects') diff --git a/src/tesseract/objects/Ellipsoid.java b/src/tesseract/objects/Ellipsoid.java index da6dd79..617bdb8 100644 --- a/src/tesseract/objects/Ellipsoid.java +++ b/src/tesseract/objects/Ellipsoid.java @@ -29,7 +29,8 @@ public class Ellipsoid extends PhysicalObject { /** * Default mass. */ - private static final float DEFAULT_MASS = 1; + //private static final float DEFAULT_MASS = Float.POSITIVE_INFINITY; + private static final float DEFAULT_MASS = 10; /** * Number of divisions in the sphere. diff --git a/src/tesseract/objects/Particle.java b/src/tesseract/objects/Particle.java index a5b6029..6dcc864 100644 --- a/src/tesseract/objects/Particle.java +++ b/src/tesseract/objects/Particle.java @@ -5,6 +5,7 @@ import java.awt.Color; import javax.media.j3d.Appearance; import javax.media.j3d.ColoringAttributes; import javax.media.j3d.Node; +import javax.media.j3d.TransformGroup; import javax.vecmath.Color3f; import javax.vecmath.Vector3f; @@ -61,7 +62,7 @@ public class Particle extends PhysicalObject { * @param theColor The particle color or null for random. * @return A sphere to visually represent the particle. */ - private Node createShape(final Color3f theColor) { + private TransformGroup createShape(final Color3f theColor) { Color3f color = theColor; ColoringAttributes cAttr; @@ -74,7 +75,10 @@ public class Particle extends PhysicalObject { cAttr = new ColoringAttributes(color, ColoringAttributes.FASTEST); Appearance appearance = new Appearance(); appearance.setColoringAttributes(cAttr); - return new Sphere(RADIUS, Sphere.ENABLE_GEOMETRY_PICKING | Sphere.GEOMETRY_NOT_SHARED, + Sphere sphere = new Sphere(RADIUS, Sphere.ENABLE_GEOMETRY_PICKING | Sphere.GEOMETRY_NOT_SHARED, DIVISIONS, appearance); + TransformGroup tg = new TransformGroup(); + tg.addChild(sphere); + return tg; } } diff --git a/src/tesseract/objects/PlanarPolygon.java b/src/tesseract/objects/PlanarPolygon.java index 94fb011..5782fa7 100644 --- a/src/tesseract/objects/PlanarPolygon.java +++ b/src/tesseract/objects/PlanarPolygon.java @@ -40,8 +40,8 @@ public class PlanarPolygon extends PhysicalObject { /** * Default mass. */ - //private static final float DEFAULT_MASS = Float.POSITIVE_INFINITY; - private static final float DEFAULT_MASS = 1; + private static final float DEFAULT_MASS = Float.POSITIVE_INFINITY; + //private static final float DEFAULT_MASS = 6; /** * Number of divisions in the sphere. -- cgit v1.2.3