From c663dffc86a7fcec9f05aaf8a107e6200a35c2fa Mon Sep 17 00:00:00 2001 From: Jesse Morgan Date: Sat, 12 Feb 2011 18:57:14 +0000 Subject: Added HalfSpaces to the bounds. Fixed collisions and particle emitters. Corrected typo in PlanarPolygonMenuItem. Added removeForce() to world and cleaned up the force adding/removing. --- src/tesseract/TesseractUI.java | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) (limited to 'src/tesseract/TesseractUI.java') diff --git a/src/tesseract/TesseractUI.java b/src/tesseract/TesseractUI.java index 99b2fa4..e7749b5 100644 --- a/src/tesseract/TesseractUI.java +++ b/src/tesseract/TesseractUI.java @@ -95,19 +95,12 @@ public class TesseractUI extends JFrame { */ private Timer myTimer; - /** - * The gravity of the world - */ - private Gravity my_gravity; - /** * UI Constructor. */ public TesseractUI() { super("Tesseract Project"); - - my_gravity = new Gravity(); - + setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); myWorld = new World( @@ -166,6 +159,14 @@ public class TesseractUI extends JFrame { }); simulationMenu.add(runSim); + JMenuItem resetSim = new JCheckBoxMenuItem("Reset Simulator", true); + runSim.addActionListener(new ActionListener() { + public void actionPerformed(final ActionEvent e) { + myWorld.resetWorld(); + } + }); + simulationMenu.add(resetSim); + //Objects JMenu objectsMenu = new JMenu("Add Object"); for (JMenuItem item : myObjectMenuItems) { @@ -177,11 +178,18 @@ public class TesseractUI extends JFrame { JMenu forcesMenu = new JMenu("Add Forces"); JMenuItem gravity = new JCheckBoxMenuItem("Gravity", false); gravity.addActionListener(new ActionListener() { + private Force me; + + // Constructor + { + me = new Gravity(); + } + public void actionPerformed(ActionEvent e) { if (((JCheckBoxMenuItem) e.getSource()).isSelected()) { - myWorld.addForce(my_gravity); + myWorld.addForce(me); } else { - myWorld.addForce(my_gravity = new Gravity(-.5f)); + myWorld.removeForce(me); } } }); -- cgit v1.2.3