From b3ae4e889872ca0b9ca76f1d17b2f0b961226729 Mon Sep 17 00:00:00 2001 From: Normand Briere <nbriere@noware.ca> Date: Mon, 05 Aug 2019 21:48:55 -0400 Subject: [PATCH] Fix physics UI --- ParticleEditor.java | 127 ++++++++++++++++++++++++++++-------------- 1 files changed, 84 insertions(+), 43 deletions(-) diff --git a/ParticleEditor.java b/ParticleEditor.java index 8533f74..31e626f 100644 --- a/ParticleEditor.java +++ b/ParticleEditor.java @@ -70,6 +70,8 @@ oe.aConstraints.gridwidth = 1; */ super.SetupUI2(oe); + + particlesPanel = AddSlider(oe.ctrlPanel, "Particles", 0, 1000, particlesystem.numParticles); // oe.aConstraints.gridx = 0; // oe.aConstraints.gridwidth = 1; @@ -82,32 +84,44 @@ // // frameField.setFloat(particlesystem.initialVelocity); - particlesField = AddSlider(oe.ctrlPanel, "Particles", 0, 1000, particlesystem.numParticles); //, 1); - Return(); - velocityField = AddSlider(oe.ctrlPanel, "Speed", 0, 10, particlesystem.initialVelocity, 1); - Return(); - timestepField = AddSlider(oe.ctrlPanel, "Timestep", 0.001f, 1, particlesystem.controller.timestep, 1); - Return(); - delayField = AddSlider(oe.ctrlPanel, "Delay", 0, 10, particlesystem.creationdelay, 1); - Return(); - angleminField = AddSlider(oe.ctrlPanel, "Angle min", 0, (float)Math.PI, particlesystem.minimumAngle, 1); - Return(); - anglemaxField = AddSlider(oe.ctrlPanel, "Angle max", 0, (float)Math.PI, particlesystem.maximumAngle, 1); - Return(); - sizeminField = AddSlider(oe.ctrlPanel, "Size min", 0, 10, particlesystem.minimumSize, 1); - Return(); - sizemaxField = AddSlider(oe.ctrlPanel, "Size max", 0, 10, particlesystem.maximumSize, 1); - Return(); - lifeminField = AddSlider(oe.ctrlPanel, "Life min", 0, 100, particlesystem.minimumLifeTime, 1); - Return(); - lifemaxField = AddSlider(oe.ctrlPanel, "Life max", 0, 100, particlesystem.maximumLifeTime, 1); - Return(); - densityField = AddSlider(oe.ctrlPanel, "Density", 0, 1, particlesystem.density, 1); - Return(); - gravityField = AddSlider(oe.ctrlPanel, "Gravity", 0, 1, -particlesystem.controller.gvector.y, 1); - Return(); - standbyField = AddSlider(oe.ctrlPanel, "Standby", 0, 1, particlesystem.standby, 1); - Return(); + particlesField = (cNumberSlider)particlesPanel.getComponent(1); //, 1); + oe.ctrlPanel.Return(); + speedPanel = AddSlider(oe.ctrlPanel, "Speed", 0, 10, particlesystem.initialVelocity, 1); + speedField = (cNumberSlider)speedPanel.getComponent(1); + oe.ctrlPanel.Return(); + timestepPanel = AddSlider(oe.ctrlPanel, "Timestep", 0.001f, 1, particlesystem.controller.timestep, 1); + timestepField = (cNumberSlider)timestepPanel.getComponent(1); + oe.ctrlPanel.Return(); + delayPanel = AddSlider(oe.ctrlPanel, "Delay", 0, 10, particlesystem.creationdelay, 1); + delayField = (cNumberSlider)delayPanel.getComponent(1); + oe.ctrlPanel.Return(); + angleminPanel = AddSlider(oe.ctrlPanel, "Angle min", 0, (float)Math.PI, particlesystem.minimumAngle, 1); + angleminField = (cNumberSlider)angleminPanel.getComponent(1); + oe.ctrlPanel.Return(); + anglemaxPanel = AddSlider(oe.ctrlPanel, "Angle max", 0, (float)Math.PI, particlesystem.maximumAngle, 1); + anglemaxField = (cNumberSlider)anglemaxPanel.getComponent(1); + oe.ctrlPanel.Return(); + sizeminPanel = AddSlider(oe.ctrlPanel, "Size min", 0, 10, particlesystem.minimumSize, 1); + sizeminField = (cNumberSlider)sizeminPanel.getComponent(1); + oe.ctrlPanel.Return(); + sizemaxPanel = AddSlider(oe.ctrlPanel, "Size max", 0, 10, particlesystem.maximumSize, 1); + sizemaxField = (cNumberSlider)sizemaxPanel.getComponent(1); + oe.ctrlPanel.Return(); + lifeminPanel = AddSlider(oe.ctrlPanel, "Life min", 0, 100, particlesystem.minimumLifeTime, 1); + lifeminField = (cNumberSlider)lifeminPanel.getComponent(1); + oe.ctrlPanel.Return(); + lifemaxPanel = AddSlider(oe.ctrlPanel, "Life max", 0, 100, particlesystem.maximumLifeTime, 1); + lifemaxField = (cNumberSlider)lifemaxPanel.getComponent(1); + oe.ctrlPanel.Return(); + densityPanel = AddSlider(oe.ctrlPanel, "Density", 0, 1, particlesystem.density, 1); + densityField = (cNumberSlider)densityPanel.getComponent(1); + oe.ctrlPanel.Return(); + gravityPanel = AddSlider(oe.ctrlPanel, "Gravity", 0, 1, -particlesystem.controller.gvector.y, 1); + gravityField = (cNumberSlider)gravityPanel.getComponent(1); + oe.ctrlPanel.Return(); + standbyPanel = AddSlider(oe.ctrlPanel, "Standby", 0, 1, particlesystem.standby, 1); + standbyField = (cNumberSlider)standbyPanel.getComponent(1); + oe.ctrlPanel.Return(); // oe.aConstraints.gridy += 1; // oe.aConstraints.gridx = 0; @@ -177,7 +191,7 @@ { //System.out.println("Biparam :: stateChanged"); if (e.getSource() == particlesField || - e.getSource() == velocityField || + e.getSource() == speedField || e.getSource() == delayField || e.getSource() == timestepField || e.getSource() == angleminField || @@ -204,7 +218,7 @@ { // System.out.println("Biparam :: Refresh"); new Exception().printStackTrace(); - particlesystem.initialVelocity = (float) velocityField.getFloat(); // biparam.minUDivs, 99); + particlesystem.initialVelocity = (float) speedField.getFloat(); // biparam.minUDivs, 99); particlesystem.controller.timestep = (float) timestepField.getFloat(); refreshContents(); @@ -232,7 +246,7 @@ //System.out.println("Biparam :: applySelf"); //super.applySelf(); particlesystem.numParticles = particlesField.getInteger(); // biparam.minUDivs, 99); - particlesystem.initialVelocity = (float) velocityField.getFloat(); // biparam.minUDivs, 99); + particlesystem.initialVelocity = (float) speedField.getFloat(); // biparam.minUDivs, 99); particlesystem.controller.timestep = (float) timestepField.getFloat(); particlesystem.creationdelay = (float) delayField.getFloat(); particlesystem.minimumSize = (float) sizeminField.getFloat(); @@ -253,19 +267,32 @@ public void closeUI() { - Remove(particlesField); - Remove(velocityField); - Remove(timestepField); - Remove(delayField); - Remove(sizeminField); - Remove(sizemaxField); - Remove(angleminField); - Remove(anglemaxField); - Remove(lifeminField); - Remove(lifemaxField); - Remove(densityField); - Remove(gravityField); - Remove(standbyField); +// Remove(particlesField); +// Remove(speedField); +// Remove(timestepField); +// Remove(delayField); +// Remove(sizeminField); +// Remove(sizemaxField); +// Remove(angleminField); +// Remove(anglemaxField); +// Remove(lifeminField); +// Remove(lifemaxField); +// Remove(densityField); +// Remove(gravityField); +// Remove(standbyField); + objEditor.ctrlPanel.remove(particlesPanel); + objEditor.ctrlPanel.remove(speedPanel); + objEditor.ctrlPanel.remove(timestepPanel); + objEditor.ctrlPanel.remove(delayPanel); + objEditor.ctrlPanel.remove(sizeminPanel); + objEditor.ctrlPanel.remove(sizemaxPanel); + objEditor.ctrlPanel.remove(angleminPanel); + objEditor.ctrlPanel.remove(anglemaxPanel); + objEditor.ctrlPanel.remove(lifeminPanel); + objEditor.ctrlPanel.remove(lifemaxPanel); + objEditor.ctrlPanel.remove(densityPanel); + objEditor.ctrlPanel.remove(gravityPanel); + objEditor.ctrlPanel.remove(standbyPanel); // ObjEditor oe = objEditor; @@ -292,7 +319,7 @@ ParticleSystem particlesystem; cNumberSlider particlesField; - cNumberSlider velocityField; + cNumberSlider speedField; cNumberSlider timestepField; cNumberSlider delayField; cNumberSlider sizeminField; @@ -305,6 +332,20 @@ cNumberSlider gravityField; cNumberSlider standbyField; + cGridBag particlesPanel; + cGridBag speedPanel; + cGridBag timestepPanel; + cGridBag delayPanel; + cGridBag sizeminPanel; + cGridBag sizemaxPanel; + cGridBag angleminPanel; + cGridBag anglemaxPanel; + cGridBag lifeminPanel; + cGridBag lifemaxPanel; + cGridBag densityPanel; + cGridBag gravityPanel; + cGridBag standbyPanel; + ObjectUI parent; //ObjEditor objEditor; } -- Gitblit v1.6.2