From 504890a7b930ab6b853c49de825ae848e0535339 Mon Sep 17 00:00:00 2001 From: Normand Briere <nbriere@noware.ca> Date: Wed, 01 May 2019 09:08:30 -0400 Subject: [PATCH] Control pane --- ImplicitTiler.java | 1 ObjEditor.java | 203 ++++++----- SuperEditor.java | 69 ++-- LA.java | 1 PhysicsEditor.java | 1 BiparamEditor.java | 30 CameraPane.java | 5 cSpringEditor.java | 205 ++++++++---- TorusEditor.java | 19 ParticleEditor.java | 127 +++++-- Blob.java | 1 LatheEditor.java | 17 Mocap.java | 1 Composite.java | 2 GenericJoint.java | 7 RandomEditor.java | 19 BlobEditor.java | 101 +++--- BoundaryRep.java | 1 PointFlowEditor.java | 12 MorphEditor.java | 4 BezierEditor.java | 12 SwitchEditor.java | 8 cSpring.java | 10 MocapEditor.java | 12 CSGEditor.java | 2 Object3D.java | 1 ConeEditor.java | 57 +-- KleinEditor.java | 12 28 files changed, 543 insertions(+), 397 deletions(-) diff --git a/BezierEditor.java b/BezierEditor.java index 71ac0c9..ba6bf53 100644 --- a/BezierEditor.java +++ b/BezierEditor.java @@ -30,15 +30,9 @@ { super.SetupUI2(oe); - oe.ctrlPanel.add(depthLabel = new JLabel("Depth"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.aConstraints.fill = GridBagConstraints.HORIZONTAL; - oe.aConstraints.gridx += 1; - oe.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.ctrlPanel.add(depthField = new NumberSlider(0, 5), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.aConstraints.gridy += 1; - oe.aConstraints.gridwidth = 1; - oe.aConstraints.fill = 0; - oe.aConstraints.gridx -= 1; + oe.ctrlPanel.add(depthLabel = new JLabel("Depth")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + oe.ctrlPanel.Return(); + oe.ctrlPanel.add(depthField = new NumberSlider(0, 5)); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); depthField.setInteger(bezier.GetDepth()); depthField.addChangeListener(this); diff --git a/BiparamEditor.java b/BiparamEditor.java index 16a02c3..c21b084 100644 --- a/BiparamEditor.java +++ b/BiparamEditor.java @@ -67,11 +67,14 @@ oe.aConstraints.gridwidth = 1; */ super.SetupUI2(oe); - - uDivsField = AddSlider(oe.ctrlPanel, "U #", biparam.minUDivs, 250+biparam.minUDivs, biparam.uDivs); - Return(); - vDivsField = AddSlider(oe.ctrlPanel, "V #", biparam.minVDivs, (int)(500/3.14)+biparam.minVDivs, biparam.vDivs); - Return(); + + uvPanel = new cGridBag().setVertical(true); + + uDivsField = (cNumberSlider)AddSlider(uvPanel, "U #", biparam.minUDivs, 250+biparam.minUDivs, biparam.uDivs).getComponent(1); + vDivsField = (cNumberSlider)AddSlider(uvPanel, "V #", biparam.minVDivs, (int)(500/3.1416)+biparam.minVDivs, biparam.vDivs).getComponent(1); + + oe.ctrlPanel.add(uvPanel); + oe.ctrlPanel.Return(); // oe.aConstraints.gridwidth = 1; // oe.aConstraints.fill = GridBagConstraints.VERTICAL; // oe.ctrlPanel.add(uDivsLabel = new JLabel("U #"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); @@ -98,17 +101,11 @@ // oe.aConstraints.gridwidth = 1; if (biparam instanceof Cone) // ends) { - oe.aConstraints.gridy += 1; - oe.aConstraints.gridwidth = 3; -// oe.aConstraints.anchor = GridBagConstraints.WEST; - oe.ctrlPanel.add(optionCB = new JCheckBox("Close Surface", biparam.endcaps), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + oe.ctrlPanel.add(optionCB = new JCheckBox("Close Surface", biparam.endcaps)); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); optionCB.addItemListener(this); -// oe.aConstraints.anchor = GridBagConstraints.EAST; - oe.aConstraints.gridwidth = 1; +oe.ctrlPanel.Return(); //endcaps.setState(!biparam.endcaps); } - oe.aConstraints.gridy += 1; - oe.aConstraints.gridx = 0; } void Clear() @@ -246,8 +243,9 @@ // oe.ctrlPanel.remove(uDivsLabel); // oe.ctrlPanel.remove(vDivsLabel); // //oe.ctrlPanel.repaint(); - Remove(uDivsField); - Remove(vDivsField); +// Remove(uDivsField); +// Remove(vDivsField); + oe.ctrlPanel.remove(uvPanel); super.closeUI(); } @@ -269,6 +267,8 @@ cNumberSlider vDivsField; JCheckBox optionCB; + cGridBag uvPanel; + ObjectUI parent; //ObjEditor objEditor; diff --git a/Blob.java b/Blob.java index 9e22b13..6a7cf90 100644 --- a/Blob.java +++ b/Blob.java @@ -82,6 +82,7 @@ void retile() { + new Exception().printStackTrace(); System.exit(0); ClearList(); bRep = (new ImplicitTiler(this, ImplicitTiler.SURFACEID, true, true, true, cellSize, cellSize, tolerance, true)).bRep; diff --git a/BlobEditor.java b/BlobEditor.java index 6b74d1b..0d5fd8c 100644 --- a/BlobEditor.java +++ b/BlobEditor.java @@ -43,61 +43,56 @@ { super.SetupUI2(oe); - oe.ctrlPanel.add(thresholdLabel = new JLabel("Threshold"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.aConstraints.fill = GridBagConstraints.HORIZONTAL; - oe.aConstraints.gridx += 1; - oe.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.ctrlPanel.add(thresholdField = new NumberField(), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - thresholdField.addActionListener(this); - oe.aConstraints.gridwidth = 1; - thresholdField.setFloat(blob.threshold); - oe.aConstraints.fill = 0; - oe.aConstraints.gridx = 0; - oe.aConstraints.gridy += 1; - oe.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.ctrlPanel.add(newButton = new JButton("New Ball"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - newButton.addActionListener(this); - oe.aConstraints.gridx += 2; - oe.ctrlPanel.add(deleteButton = new JButton("Delete Ball"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - deleteButton.addActionListener(this); - oe.aConstraints.gridwidth = 1; - oe.aConstraints.gridx = 0; - oe.aConstraints.gridy += 1; - oe.ctrlPanel.add(strengthLabel = new JLabel("Strength"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.aConstraints.fill = GridBagConstraints.HORIZONTAL; - oe.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.aConstraints.gridx += 1; - oe.ctrlPanel.add(strengthField = new NumberField(), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - strengthField.addActionListener(this); - oe.aConstraints.gridwidth = 1; - toCompFields(); - oe.aConstraints.fill = 0; - oe.aConstraints.gridx = 0; - oe.aConstraints.gridy += 1; - - oe.ctrlPanel.add(sizeLabel = new JLabel("Depth"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.aConstraints.fill = GridBagConstraints.HORIZONTAL; - oe.aConstraints.gridx += 1; - oe.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.ctrlPanel.add(sizeField = new NumberField(), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - sizeField.addActionListener(this); - oe.aConstraints.gridwidth = 1; - sizeField.setFloat(blob.cellSize); - oe.aConstraints.gridy += 1; - oe.aConstraints.fill = 0; - oe.aConstraints.gridx = 0; + oe.ctrlPanel.add(thresholdLabel = new JLabel("Threshold:")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.ctrlPanel.add(tolLabel = new JLabel("Tolerance"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.aConstraints.fill = GridBagConstraints.HORIZONTAL; - oe.aConstraints.gridx += 1; - oe.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.ctrlPanel.add(tolField = new NumberField(), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + oe.ctrlPanel.Return(); + + oe.ctrlPanel.add(thresholdField = new NumberField()); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + thresholdField.addActionListener(this); + thresholdField.setFloat(blob.threshold); + + oe.ctrlPanel.Return(); + + oe.ctrlPanel.add(newButton = new JButton("New Ball")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + newButton.addActionListener(this); + oe.ctrlPanel.Return(); + + oe.ctrlPanel.add(deleteButton = new JButton("Delete Ball")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + deleteButton.addActionListener(this); + oe.ctrlPanel.Return(); + + /* + oe.ctrlPanel.add(strengthLabel = new JLabel("Strength:")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + + oe.ctrlPanel.Return(); + + oe.ctrlPanel.add(strengthField = new NumberField()); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + strengthField.addActionListener(this); + + oe.ctrlPanel.Return(); + */ + + toCompFields(); + + oe.ctrlPanel.add(sizeLabel = new JLabel("Depth:")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + + oe.ctrlPanel.Return(); + + oe.ctrlPanel.add(sizeField = new NumberField()); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + sizeField.addActionListener(this); + sizeField.setFloat(blob.cellSize); + + oe.ctrlPanel.Return(); + + oe.ctrlPanel.add(tolLabel = new JLabel("Tolerance:")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + + oe.ctrlPanel.Return(); + + oe.ctrlPanel.add(tolField = new NumberField()); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); tolField.addActionListener(this); - oe.aConstraints.gridwidth = 1; - tolField.setFloat(blob.tolerance); - oe.aConstraints.gridy += 1; - oe.aConstraints.fill = 0; - oe.aConstraints.gridx = 0; + tolField.setFloat(blob.tolerance); + + oe.ctrlPanel.Return(); } public void closeUI() diff --git a/BoundaryRep.java b/BoundaryRep.java index 14a7921..69169d7 100644 --- a/BoundaryRep.java +++ b/BoundaryRep.java @@ -6354,6 +6354,7 @@ void InitWeights() { + new Exception().printStackTrace(); System.exit(0); int n = 0; int b = 0; diff --git a/CSGEditor.java b/CSGEditor.java index 4da2c35..fe9aa98 100644 --- a/CSGEditor.java +++ b/CSGEditor.java @@ -92,7 +92,7 @@ //oe.aConstraints.gridy += 1; oe.aConstraints.gridx += 1; - Return(); + oe.ctrlPanel.Return(); list = new Vector(); list.add("Smooth"); diff --git a/CameraPane.java b/CameraPane.java index 296ba69..f5d934c 100644 --- a/CameraPane.java +++ b/CameraPane.java @@ -4208,6 +4208,7 @@ com.sun.opengl.util.texture.Texture CompressTexture2(String name) { + new Exception().printStackTrace(); System.exit(0); com.sun.opengl.util.texture.Texture texture = null; @@ -13946,6 +13947,7 @@ public void run() { + new Exception().printStackTrace(); System.exit(0); for (;;) { @@ -15144,6 +15146,7 @@ void SelectParent() { + new Exception().printStackTrace(); System.exit(0); Composite group = (Composite) object; java.util.Vector selectees = new java.util.Vector(group.selection); @@ -15167,6 +15170,7 @@ void SelectChildren() { + new Exception().printStackTrace(); System.exit(0); /* Composite group = (Composite) object; @@ -16280,6 +16284,7 @@ { if (!selection) { + new Exception().printStackTrace(); System.exit(0); return; } diff --git a/Composite.java b/Composite.java index 210413e..bffa912 100644 --- a/Composite.java +++ b/Composite.java @@ -205,6 +205,7 @@ boolean HasLoops() { + new Exception().printStackTrace(); System.exit(0); if (blockloop) { @@ -348,6 +349,7 @@ void getBounds0(cVector minima, cVector maxima, boolean xform) { + new Exception().printStackTrace(); System.exit(0); minima.x = minima.y = minima.z = 1E10; maxima.x = maxima.y = maxima.z = -1E10; diff --git a/ConeEditor.java b/ConeEditor.java index 6cc9579..c186a8b 100644 --- a/ConeEditor.java +++ b/ConeEditor.java @@ -8,6 +8,8 @@ import javax.swing.*; import javax.swing.event.*; +import grafeme.ui.*; + class ConeEditor extends BiparamEditor implements ChangeListener, ObjectUI { @@ -49,7 +51,6 @@ { super.SetupUI2(oe); - oe.aConstraints.fill = 0; /* ctrlPanel.add(baseLabel = new JLabel("Base"), aConstraints); aConstraints.fill = GridBagConstraints.HORIZONTAL; @@ -58,19 +59,15 @@ ctrlPanel.add(baseField = new NumberField(), aConstraints); baseField.setVector(cone.base); baseField.addActionListener(this); - aConstraints.fill = 0; - aConstraints.gridy += 1; - aConstraints.gridx -= 1; */ - oe.aConstraints.gridwidth = 1; - oe.ctrlPanel.add(baseRadLabel = new JLabel("Top"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.aConstraints.fill = GridBagConstraints.HORIZONTAL; - oe.aConstraints.gridx += 1; - oe.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.ctrlPanel.add(baseRadField = new NumberSlider(0.001,10,1), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + topPanel = new cGridBag(); + topPanel.add(baseRadLabel = new JLabel("Top")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + topPanel.add(baseRadField = new cNumberSlider(this, 0.001,10,1)); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); baseRadField.setFloat(cone.baseRadius); - baseRadField.addChangeListener(this); - /* + + oe.ctrlPanel.add(topPanel); + oe.ctrlPanel.Return(); + /* aConstraints.fill = 0; aConstraints.gridx -= 1; aConstraints.gridy += 1; @@ -83,21 +80,13 @@ apexField.setVector(cone.apex); apexField.addActionListener(this); */ - oe.aConstraints.fill = 0; - oe.aConstraints.gridx -= 1; - oe.aConstraints.gridy += 1; - oe.aConstraints.gridwidth = 1; - oe.ctrlPanel.add(apexRadLabel = new JLabel("Base"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.aConstraints.fill = GridBagConstraints.HORIZONTAL; - oe.aConstraints.gridx += 1; - oe.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.ctrlPanel.add(apexRadField = new NumberSlider(0.001,10,1), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.aConstraints.gridwidth = 1; - oe.aConstraints.gridx -= 1; - oe.aConstraints.fill = 0; + basePanel = new cGridBag(); + basePanel.add(apexRadLabel = new JLabel("Base")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + basePanel.add(apexRadField = new cNumberSlider(this, 0.001,10,1)); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); apexRadField.setFloat(cone.apexRadius); - apexRadField.addChangeListener(this); - oe.aConstraints.gridy += 1; + + oe.ctrlPanel.add(basePanel); + oe.ctrlPanel.Return(); } public void closeUI() @@ -106,10 +95,12 @@ apexRadField.removeChangeListener(this); baseRadField.removeChangeListener(this); - oe.ctrlPanel.remove(apexRadField); - oe.ctrlPanel.remove(baseRadField); - oe.ctrlPanel.remove(apexRadLabel); - oe.ctrlPanel.remove(baseRadLabel); +// oe.ctrlPanel.remove(apexRadField); +// oe.ctrlPanel.remove(baseRadField); +// oe.ctrlPanel.remove(apexRadLabel); +// oe.ctrlPanel.remove(baseRadLabel); + oe.ctrlPanel.remove(topPanel); + oe.ctrlPanel.remove(basePanel); //oe.ctrlPanel.repaint(); super.closeUI(); @@ -192,9 +183,11 @@ JLabel apexRadLabel; //NumberField baseField; //NumberField apexField; - NumberSlider baseRadField; - NumberSlider apexRadField; + cNumberSlider baseRadField; + cNumberSlider apexRadField; + cGridBag topPanel; + cGridBag basePanel; //BiparamEditor objEditor; } diff --git a/GenericJoint.java b/GenericJoint.java index ab83012..da925d6 100644 --- a/GenericJoint.java +++ b/GenericJoint.java @@ -873,6 +873,7 @@ if (shape.getShapeType() == BroadphaseNativeType.COMPOUND_SHAPE_PROXYTYPE) { + new Exception().printStackTrace(); System.exit(0); CompoundShape compoundShape = (CompoundShape) shape; Transform childTrans = transformsPool.get(); @@ -903,6 +904,7 @@ { case BOX_SHAPE_PROXYTYPE: { + new Exception().printStackTrace(); System.exit(0); BoxShape boxShape = (BoxShape) shape; Vector3f halfExtent = boxShape.getHalfExtentsWithMargin(vectorsPool.get()); @@ -914,6 +916,7 @@ } case SPHERE_SHAPE_PROXYTYPE: { + new Exception().printStackTrace(); System.exit(0); SphereShape sphereShape = (SphereShape) shape; float radius = sphereShape.getMargin(); // radius doesn't include the margin, so draw with margin @@ -960,6 +963,7 @@ case STATIC_PLANE_PROXYTYPE: { + new Exception().printStackTrace(); System.exit(0); StaticPlaneShape staticPlaneShape = (StaticPlaneShape) shape; float planeConst = staticPlaneShape.getPlaneConstant(); @@ -1006,6 +1010,7 @@ case CYLINDER_SHAPE_PROXYTYPE: { + new Exception().printStackTrace(); System.exit(0); CylinderShape cylinder = (CylinderShape) shape; int upAxis = cylinder.getUpAxis(); @@ -1358,6 +1363,7 @@ // for polyhedral shapes if (shape.isPolyhedral()) { + new Exception().printStackTrace(); System.exit(0); PolyhedralConvexShape polyshape = (PolyhedralConvexShape) shape; @@ -1427,6 +1433,7 @@ if (shape.isConcave())//>getShapeType() == TRIANGLE_MESH_SHAPE_PROXYTYPE||shape->getShapeType() == GIMPACT_SHAPE_PROXYTYPE) // if (shape->getShapeType() == TRIANGLE_MESH_SHAPE_PROXYTYPE) { + new Exception().printStackTrace(); System.exit(0); ConcaveShape concaveMesh = (ConcaveShape) shape; //btVector3 aabbMax(btScalar(1e30),btScalar(1e30),btScalar(1e30)); diff --git a/ImplicitTiler.java b/ImplicitTiler.java index 393a52d..024db48 100644 --- a/ImplicitTiler.java +++ b/ImplicitTiler.java @@ -365,6 +365,7 @@ void subdivide(double x[], double y[], double z[], int dimension) { + new Exception().printStackTrace(); System.exit(0); boolean out[] = new boolean[2]; implicit.boxInside(x, y, z, out); diff --git a/KleinEditor.java b/KleinEditor.java index a7e7253..ed20916 100644 --- a/KleinEditor.java +++ b/KleinEditor.java @@ -38,8 +38,9 @@ { super.SetupUI2(oe); - radiusField = AddSlider(oe.ctrlPanel, "Radius:", 0, 20.0, klein.radius, 1); - Return(); + radiusPanel = AddSlider(oe.ctrlPanel, "Radius:", 0, 20.0, klein.radius, 1); + this.radiusField = (cNumberSlider)radiusPanel.getComponent(1); + oe.ctrlPanel.Return(); } void Clear() @@ -97,6 +98,8 @@ Klein klein; cNumberSlider radiusField; + + cGridBag radiusPanel; public ObjEditor GetEditor() { @@ -111,8 +114,9 @@ public void closeUI() { - Remove(radiusField); - + //Remove(radiusField); + + objEditor.ctrlPanel.remove(radiusPanel); super.closeUI(); } diff --git a/LA.java b/LA.java index a667209..e1aac14 100644 --- a/LA.java +++ b/LA.java @@ -160,6 +160,7 @@ static cVector xformDir(cVector v, double mat[][]) { + new Exception().printStackTrace(); System.exit(0); cVector temp = new cVector(); xformDir(v, mat, temp); diff --git a/LatheEditor.java b/LatheEditor.java index 71c7e0f..696e3b6 100644 --- a/LatheEditor.java +++ b/LatheEditor.java @@ -37,15 +37,16 @@ { super.SetupUI2(oe); - oe.ctrlPanel.add(typeLabel = new JLabel("Spline Type"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); - oe.aConstraints.gridx += 1; - //aConstraints.fill = GridBagConstraints.HORIZONTAL; - //aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.ctrlPanel.add(typeMenu = new JComboBox(), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + oe.ctrlPanel.add(typeLabel = new JLabel("Spline Type:")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); + + oe.ctrlPanel.Return(); + + oe.ctrlPanel.add(typeMenu = new JComboBox()); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); typeMenu.addActionListener(this); - oe.aConstraints.gridx = 0; - oe.aConstraints.gridy += 1; - typeMenu.addItem("Linear"); + + oe.ctrlPanel.Return(); + + typeMenu.addItem("Linear"); typeMenu.addItem("Quadratic"); typeMenu.addItem("Cubic"); //typeMenu.select(spline.type - 1); diff --git a/Mocap.java b/Mocap.java index d696eec..9760bbb 100644 --- a/Mocap.java +++ b/Mocap.java @@ -3496,6 +3496,7 @@ // filters out bad input data void FilterAnimData() { + new Exception().printStackTrace(); System.exit(0); float[] data; // = bvh.animation.getBoneData(0); diff --git a/MocapEditor.java b/MocapEditor.java index ea3ee95..a03ea39 100644 --- a/MocapEditor.java +++ b/MocapEditor.java @@ -70,12 +70,12 @@ */ super.SetupUI2(oe); - frameField = AddSlider(oe.ctrlPanel, "Frame:", 0, mocap.bvh.animation.getNumFrames()-1, mocap.frame); - Return(); - firstField = AddSlider(oe.ctrlPanel, "First:", 0, mocap.bvh.animation.getNumFrames()-1, mocap.firstframe); - Return(); - lastField = AddSlider(oe.ctrlPanel, "Last:", 0, mocap.bvh.animation.getNumFrames()-1, mocap.lastframe); - Return(); + frameField = (cNumberSlider)AddSlider(oe.ctrlPanel, "Frame:", 0, mocap.bvh.animation.getNumFrames()-1, mocap.frame).getComponent(1); + oe.ctrlPanel.Return(); + firstField = (cNumberSlider)AddSlider(oe.ctrlPanel, "First:", 0, mocap.bvh.animation.getNumFrames()-1, mocap.firstframe).getComponent(1); + oe.ctrlPanel.Return(); + lastField = (cNumberSlider)AddSlider(oe.ctrlPanel, "Last:", 0, mocap.bvh.animation.getNumFrames()-1, mocap.lastframe).getComponent(1); + oe.ctrlPanel.Return(); // oe.aConstraints.gridx = 0; // oe.aConstraints.gridwidth = 1; diff --git a/MorphEditor.java b/MorphEditor.java index 3a0833f..2a8c8a9 100644 --- a/MorphEditor.java +++ b/MorphEditor.java @@ -70,8 +70,8 @@ for (int i=0; i<morphnode.morphobject.Size(); i++) { - morphField[i] = AddSlider(oe.ctrlPanel, morphnode.morphobject.get(i).name, 0, 2.0, morphnode.morphweights[i], 1); - Return(); + morphField[i] = (cNumberSlider)AddSlider(oe.ctrlPanel, morphnode.morphobject.get(i).name, 0, 2.0, morphnode.morphweights[i], 1).getComponent(1); + oe.ctrlPanel.Return(); } } diff --git a/ObjEditor.java b/ObjEditor.java index 8a5cd39..98cec4e 100644 --- a/ObjEditor.java +++ b/ObjEditor.java @@ -138,34 +138,40 @@ public void closeUI() { //new Exception().printStackTrace(); - System.out.println("this = " + this); - System.out.println("objEditor = " + objEditor); +// System.out.println("this = " + this); +// System.out.println("objEditor = " + objEditor); //nameField.removeActionListener(this); - objEditor.ctrlPanel.remove(nameField); +// objEditor.ctrlPanel.remove(nameField); if (!GroupEditor.allparams) return; - objEditor.ctrlPanel.remove(liveCB); - objEditor.ctrlPanel.remove(hideCB); - objEditor.ctrlPanel.remove(markCB); - - objEditor.ctrlPanel.remove(randomCB); - objEditor.ctrlPanel.remove(speedupCB); - objEditor.ctrlPanel.remove(rewindCB); - - objEditor.ctrlPanel.remove(resetButton); - objEditor.ctrlPanel.remove(stepButton); -// objEditor.ctrlPanel.remove(stepAllButton); -// objEditor.ctrlPanel.remove(resetAllButton); - objEditor.ctrlPanel.remove(link2masterCB); - //objEditor.ctrlPanel.remove(flipVCB); - //objEditor.ctrlPanel.remove(texresMenu); - objEditor.ctrlPanel.remove(slowerButton); - objEditor.ctrlPanel.remove(fasterButton); - objEditor.ctrlPanel.remove(remarkButton); +// objEditor.ctrlPanel.remove(liveCB); +// objEditor.ctrlPanel.remove(hideCB); +// objEditor.ctrlPanel.remove(markCB); +// +// objEditor.ctrlPanel.remove(randomCB); +// objEditor.ctrlPanel.remove(speedupCB); +// objEditor.ctrlPanel.remove(rewindCB); +// +// objEditor.ctrlPanel.remove(resetButton); +// objEditor.ctrlPanel.remove(stepButton); +//// objEditor.ctrlPanel.remove(stepAllButton); +//// objEditor.ctrlPanel.remove(resetAllButton); +// objEditor.ctrlPanel.remove(link2masterCB); +// //objEditor.ctrlPanel.remove(flipVCB); +// //objEditor.ctrlPanel.remove(texresMenu); +// objEditor.ctrlPanel.remove(slowerButton); +// objEditor.ctrlPanel.remove(fasterButton); +// objEditor.ctrlPanel.remove(remarkButton); - Remove(normalpushField); + objEditor.ctrlPanel.remove(namePanel); + objEditor.ctrlPanel.remove(setupPanel); + objEditor.ctrlPanel.remove(commandsPanel); + objEditor.ctrlPanel.remove(pushPanel); + //objEditor.ctrlPanel.remove(fillPanel); + + //Remove(normalpushField); } public ObjEditor GetEditor() @@ -355,7 +361,7 @@ toolbarPanel.setName("Toolbar"); treePanel = new JPanel(); treePanel.setName("Tree"); - ctrlPanel = new cGridBag(); // new GridBagLayout()); + ctrlPanel = new cGridBag().setVertical(false); // new GridBagLayout()); ctrlPanel.setName("Edit"); materialPanel = new cGridBag().setVertical(true); materialPanel.setName("Material"); @@ -386,7 +392,7 @@ //mainPanel.setLayout(new GridBagLayout()); toolbarPanel.setLayout(new FlowLayout(FlowLayout.LEFT)); treePanel.setLayout(new GridBagLayout()); - ctrlPanel.setLayout(new GridBagLayout()); + //ctrlPanel.setLayout(new GridBagLayout()); //materialPanel.setLayout(new GridBagLayout()); aConstraints = new GridBagConstraints(0, 0, 1, 1, 1.0, 1.0, @@ -767,54 +773,44 @@ JButton slowerButton; JButton fasterButton; JButton remarkButton; + + cGridBag namePanel; + cGridBag setupPanel; + cGridBag commandsPanel; + cGridBag pushPanel; + cGridBag fillPanel; - JCheckBox AddCheckBox(ObjEditor oe, String label, boolean on) + JCheckBox AddCheckBox(cGridBag panel, String label, boolean on) { JCheckBox cb; - oe.aConstraints.fill = GridBagConstraints.HORIZONTAL; - oe.aConstraints.gridwidth = 1; // 3; -// oe.aConstraints.weightx = 1; -// oe.aConstraints.anchor = GridBagConstraints.WEST; - oe.ctrlPanel.add(cb = new JCheckBox(label, on), oe.aConstraints); //, oe.ctrlPanel.getComponentCount()-1); + panel.add(cb = new JCheckBox(label, on)); //, oe.aConstraints); //, oe.ctrlPanel.getComponentCount()-1); cb.addItemListener(this); -// oe.aConstraints.anchor = GridBagConstraints.EAST; - oe.aConstraints.gridwidth = 1; - oe.aConstraints.gridx += 1; return cb; } - cButton AddButton(ObjEditor oe, String label) + cButton AddButton(cGridBag panel, String label) { cButton cb; - oe.aConstraints.fill = GridBagConstraints.HORIZONTAL; - oe.aConstraints.gridwidth = 1; -// oe.aConstraints.weightx = 1; -// oe.aConstraints.anchor = GridBagConstraints.WEST; - oe.ctrlPanel.add(cb = new cButton(label), oe.aConstraints, oe.ctrlPanel.getComponentCount() - 1); + panel.add(cb = new cButton(label)); //, oe.aConstraints, oe.ctrlPanel.getComponentCount() - 1); cb.addActionListener(this); -// oe.aConstraints.anchor = GridBagConstraints.EAST; - oe.aConstraints.gridwidth = 1; - oe.aConstraints.gridx += 1; return cb; } - JComboBox AddCombo(ObjEditor oe, java.util.Vector list, int item) + JComboBox AddCombo(cGridBag panel, java.util.Vector list, int item) { JComboBox combo; - oe.aConstraints.fill = GridBagConstraints.HORIZONTAL; - oe.ctrlPanel.add(combo = new JComboBox(new cListModel(list, item)), oe.aConstraints); //, oe.ctrlPanel.getComponentCount()-1); - oe.aConstraints.gridx += 1; + panel.add(combo = new JComboBox(new cListModel(list, item))); //, oe.aConstraints); //, oe.ctrlPanel.getComponentCount()-1); combo.addActionListener(this); return combo; } - cNumberSlider AddSlider(cGridBag ctrlPanel, String label, double min, double max, double current, double pow) + cGridBag AddSlider(cGridBag panel, String label, double min, double max, double current, double pow) { cGridBag control = new cGridBag(); @@ -826,12 +822,12 @@ control.add(combo = new cNumberSlider(this, min, max, pow)); //, aConstraints); //, oe.ctrlPanel.getComponentCount()-1); combo.setFloat(current); - ctrlPanel.add(control); + panel.add(control); - return combo; + return control; } - cNumberSlider AddSlider(cGridBag ctrlPanel, String label, int min, int max, int current) + cGridBag AddSlider(cGridBag panel, String label, int min, int max, int current) { cGridBag control = new cGridBag(); @@ -839,25 +835,21 @@ JLabel jlabel = new JLabel(label); jlabel.setHorizontalAlignment(SwingConstants.TRAILING); - ctrlPanel.add(jlabel); //, aConstraints); //, oe.ctrlPanel.getComponentCount()-1); - ctrlPanel.add(combo = new cNumberSlider(this, min, max)); //, aConstraints); //, oe.ctrlPanel.getComponentCount()-1); + control.add(jlabel); //, aConstraints); //, oe.ctrlPanel.getComponentCount()-1); + control.add(combo = new cNumberSlider(this, min, max)); //, aConstraints); //, oe.ctrlPanel.getComponentCount()-1); combo.setInteger(current); - ctrlPanel.add(control); + panel.add(control); - return combo; + return control; } JTextArea AddText(cGridBag ctrlPanel, String name) { JTextArea text; - aConstraints.fill = GridBagConstraints.HORIZONTAL; - aConstraints.gridwidth = ObjEditor.GRIDWIDTH; ctrlPanel.add(text = new JTextArea(name)); //, aConstraints); //, oe.ctrlPanel.getComponentCount()-1); text.addCaretListener(this); - aConstraints.gridx += 1; - aConstraints.gridwidth = 1; return text; } @@ -896,7 +888,7 @@ /* */ - void Return() // ObjEditor oe) + void Return0() // ObjEditor oe) { aConstraints.gridy += 1; aConstraints.gridx = 0; @@ -955,33 +947,52 @@ // oe.aConstraints.weighty = 0; // oe.aConstraints.gridx = 0; // oe.aConstraints.gridy = 0; - SetupName(oe); + //SetupName(oe); + + namePanel = new cGridBag(); + + nameField = AddText(namePanel, copy.GetName()); + namePanel.add(nameField); + oe.ctrlPanel.add(namePanel); + + oe.ctrlPanel.Return(); if (!GroupEditor.allparams) return; - liveCB = AddCheckBox(oe, "Live", copy.live); - link2masterCB = AddCheckBox(oe, "Supp", copy.link2master); - hideCB = AddCheckBox(oe, "Hide", copy.hide); + setupPanel = new cGridBag().setVertical(false); + + liveCB = AddCheckBox(setupPanel, "Live", copy.live); + link2masterCB = AddCheckBox(setupPanel, "Supp", copy.link2master); + hideCB = AddCheckBox(setupPanel, "Hide", copy.hide); // Return(); - markCB = AddCheckBox(oe, "Mark", copy.marked); - rewindCB = AddCheckBox(oe, "Rew", copy.rewind); - randomCB = AddCheckBox(oe, "Rand", copy.random); - Return(); - resetButton = AddButton(oe, "Reset"); - stepButton = AddButton(oe, "Step"); + markCB = AddCheckBox(setupPanel, "Mark", copy.marked); + rewindCB = AddCheckBox(setupPanel, "Rew", copy.rewind); + randomCB = AddCheckBox(setupPanel, "Rand", copy.random); + + oe.ctrlPanel.add(setupPanel); + oe.ctrlPanel.Return(); + + commandsPanel = new cGridBag().setVertical(false); + + resetButton = AddButton(commandsPanel, "Reset"); + stepButton = AddButton(commandsPanel, "Step"); // resetAllButton = AddButton(oe, "Reset All"); // stepAllButton = AddButton(oe, "Step All"); - speedupCB = AddCheckBox(oe, "Speed", copy.speedup); + speedupCB = AddCheckBox(commandsPanel, "Speed", copy.speedup); // Return(); - slowerButton = AddButton(oe, "Slow"); - fasterButton = AddButton(oe, "Fast"); - remarkButton = AddButton(oe, "Rem"); + slowerButton = AddButton(commandsPanel, "Slow"); + fasterButton = AddButton(commandsPanel, "Fast"); + remarkButton = AddButton(commandsPanel, "Remark"); - //Return(); + oe.ctrlPanel.add(commandsPanel); + oe.ctrlPanel.Return(); - //normalpushField = AddSlider(oe.ctrlPanel, "Push", -10, 10, 0, -1); + pushPanel = AddSlider(oe.ctrlPanel, "Push", -10, 10, 0, 1); + normalpushField = (cNumberSlider)pushPanel.getComponent(1); //Return(); + + oe.ctrlPanel.Return(); // oe.ctrlPanel.add(stepButton = new cButton("Step"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; @@ -1076,7 +1087,7 @@ oe.aConstraints.gridwidth = 1; /**/ nameField = AddText(oe.ctrlPanel, copy.GetName()); - Return(); + oe.ctrlPanel.Return(); //ctrlPanel.add(textureButton = new Button("Texture...")); //textureButton.setEnabled(false); @@ -1253,10 +1264,11 @@ //JScrollPane tmp = new JScrollPane(ctrlPanel, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER); //tmp.setName("Edit"); objectPanel.add(materialPanel); - JPanel north = new JPanel(new BorderLayout()); - north.setName("Edit"); - north.add(ctrlPanel, BorderLayout.NORTH); - objectPanel.add(north); +// JPanel north = new JPanel(new BorderLayout()); +// north.setName("Edit"); +// north.add(ctrlPanel, BorderLayout.NORTH); +// objectPanel.add(north); + objectPanel.add(ctrlPanel); objectPanel.add(infoPanel); /* @@ -1415,7 +1427,7 @@ ctrlPanel.removeAll(); } - void SetupMaterial(cGridBag ctrlPanel) + void SetupMaterial(cGridBag panel) { /* ctrlPanel.add(materialLabel = new JLabel("MATERIAL : "), aConstraints); @@ -1435,7 +1447,7 @@ editBar.add(propagateToggle = new cCheckBox("Prop", propagate)); // , aConstraints); editBar.add(multiplyToggle = new cCheckBox("Mult", false)); // , aConstraints); - ctrlPanel.add(editBar); + panel.add(editBar); /**/ //aConstraints.weighty = 0; @@ -1484,9 +1496,9 @@ shadowbias.add(shadowbiasField = new cNumberSlider(this, 0.001, 50, -1)); // , aConstraints); colorSection.add(shadowbias); - ctrlPanel.add(new JSeparator()); + panel.add(new JSeparator()); - ctrlPanel.add(colorSection); + panel.add(colorSection); //ctrlPanel.add(new JLabel("----------------------------------")); // , aConstraints); @@ -1534,9 +1546,9 @@ fakedepth.add(fakedepthField = new cNumberSlider(this, 0.001, 50, -1)); // , aConstraints); diffuseSection.add(fakedepth); - ctrlPanel.add(new JSeparator()); + panel.add(new JSeparator()); - ctrlPanel.add(diffuseSection); + panel.add(diffuseSection); //ctrlPanel.add(new JLabel("----------------------------------")); // , aConstraints); @@ -1572,7 +1584,7 @@ velvet.add(velvetField = new cNumberSlider(this, 0.001, 50, -1)); // , aConstraints); specularSection.add(velvet); - shiftField = AddSlider(specularSection, "Shift", 0.001, 50, copy.material.shift, -1); + shiftField = (cNumberSlider)AddSlider(specularSection, "Shift", 0.001, 50, copy.material.shift, -1).getComponent(1); //Return(); // ctrlPanel.add(shiftLabel = new JLabel("Shift"), aConstraints); // shiftLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -1585,9 +1597,9 @@ // aConstraints.gridwidth = 1; - ctrlPanel.add(new JSeparator()); + panel.add(new JSeparator()); - ctrlPanel.add(specularSection); + panel.add(specularSection); //ctrlPanel.add(new JLabel("----------------------------------")); // , aConstraints); @@ -1617,9 +1629,9 @@ opacity.add(opacityField = new cNumberSlider(this, 0.001, 1, -0.5)); // , aConstraints); globalSection.add(opacity); - ctrlPanel.add(new JSeparator()); + panel.add(new JSeparator()); - ctrlPanel.add(globalSection); + panel.add(globalSection); //ctrlPanel.add(new JLabel("----------------------------------")); // , aConstraints); @@ -1661,9 +1673,9 @@ opacityPower.add(opacityPowerField = new cNumberSlider(this, 0.0, 10 /*10 dec 2013*/)); // , aConstraints); textureSection.add(opacityPower); - ctrlPanel.add(new JSeparator()); + panel.add(new JSeparator()); - ctrlPanel.add(textureSection); + panel.add(textureSection); //ctrlPanel.add(new JLabel("----------------------------------")); // , aConstraints); @@ -2482,6 +2494,7 @@ } if (input == null) { + new Exception().printStackTrace(); System.exit(0); } @@ -3211,6 +3224,7 @@ callee.refreshContents(); } else { + new Exception().printStackTrace(); System.exit(0); } } @@ -3421,6 +3435,7 @@ || e.getSource() == apertureField || e.getSource() == shadowblurField) { + new Exception().printStackTrace(); System.exit(0); cameraView.options1[0] = (float) focusField.getFloat() * 10; cameraView.options1[1] = (float) apertureField.getFloat() / 1000; @@ -4392,8 +4407,8 @@ //MenuItem normalLensItem; MenuItem editCameraItem; MenuItem revertCameraItem; - CheckboxMenuItem toggleLiveItem; MenuItem stepItem; + CheckboxMenuItem toggleLiveItem; CheckboxMenuItem toggleFullScreenItem; CheckboxMenuItem toggleTimelineItem; CheckboxMenuItem toggleRenderItem; diff --git a/Object3D.java b/Object3D.java index 70c7ead..2cb44d8 100644 --- a/Object3D.java +++ b/Object3D.java @@ -2300,6 +2300,7 @@ { if (newWindow) { + new Exception().printStackTrace(); System.exit(0); if (parent != null) { 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; } diff --git a/PhysicsEditor.java b/PhysicsEditor.java index 90f7668..223d83b 100644 --- a/PhysicsEditor.java +++ b/PhysicsEditor.java @@ -190,6 +190,7 @@ void Refresh() { + new Exception().printStackTrace(); System.exit(0); System.out.println("Biparam :: Refresh"); physicsnode.gravity = (float)gravityField.getFloat(); // biparam.minUDivs, 99); diff --git a/PointFlowEditor.java b/PointFlowEditor.java index 8088102..4c75b0e 100644 --- a/PointFlowEditor.java +++ b/PointFlowEditor.java @@ -82,8 +82,8 @@ // // frameField.setFloat(particlesystem.initialVelocity); - resizefactorField = AddSlider(oe.ctrlPanel, "Resize factor", 0, 2, particlesystem.resizefactor, 1); - Return(); + resizefactorField = (cNumberSlider)AddSlider(oe.ctrlPanel, "Resize factor", 0, 2, particlesystem.resizefactor, 1).getComponent(1); + oe.ctrlPanel.Return(); // velocityField = AddSlider(oe.ctrlPanel, "Speed", 0, 10, particlesystem.initialVelocity, 1); // Return(); // timestepField = AddSlider(oe.ctrlPanel, "Timestep", 0.001f, 1, particlesystem.controller.timestep, 1); @@ -94,10 +94,10 @@ // Return(); // anglemaxField = AddSlider(oe.ctrlPanel, "Angle max", 0, (float)Math.PI, particlesystem.maximumAngle, 1); // Return(); - sizeminField = AddSlider(oe.ctrlPanel, "Size min", 0, 0.01, particlesystem.minimumSize, 1); - Return(); - sizemaxField = AddSlider(oe.ctrlPanel, "Size max", 0, 0.01, particlesystem.maximumSize, 1); - Return(); + sizeminField = (cNumberSlider)AddSlider(oe.ctrlPanel, "Size min", 0, 0.01, particlesystem.minimumSize, 1).getComponent(1); + oe.ctrlPanel.Return(); + sizemaxField = (cNumberSlider)AddSlider(oe.ctrlPanel, "Size max", 0, 0.01, particlesystem.maximumSize, 1).getComponent(1); + oe.ctrlPanel.Return(); // lifeminField = AddSlider(oe.ctrlPanel, "Life min", 0, 100, particlesystem.minimumLifeTime, 1); // Return(); // lifemaxField = AddSlider(oe.ctrlPanel, "Life max", 0, 100, particlesystem.maximumLifeTime, 1); diff --git a/RandomEditor.java b/RandomEditor.java index e7ac3a1..7e433cf 100644 --- a/RandomEditor.java +++ b/RandomEditor.java @@ -9,6 +9,7 @@ class RandomEditor extends ObjEditor implements //ItemListener, ChangeListener, ObjectUI, ActionListener { + cGridBag childPanel; RandomEditor(RandomNode inBP, GroupEditor callee) { super(inBP,callee); @@ -59,10 +60,11 @@ void SetupUI2(ObjEditor oe) { super.SetupUI2(oe); + childPanel = AddSlider(oe.ctrlPanel, "Child: ", 0, switchnode.Size()-1, switchnode.rnd); - frameField = AddSlider(oe.ctrlPanel, "Child: ", 0, switchnode.Size()-1, switchnode.rnd); - Return(); - } + childField = (cNumberSlider)childPanel.getComponent(1); + oe.ctrlPanel.Return(); + } void Clear() { @@ -75,7 +77,7 @@ public void stateChanged(ChangeEvent e) { //System.out.println("Biparam :: stateChanged"); - if (e.getSource() == frameField) + if (e.getSource() == childField) { //System.out.println("#U = " + biparam.uDivs); //System.out.println("#V = " + biparam.vDivs); @@ -92,7 +94,7 @@ void Refresh() { - switchnode.rnd = frameField.getInteger(); + switchnode.rnd = childField.getInteger(); refreshContents(); } @@ -100,7 +102,7 @@ /**/ public void applySelf() { - switchnode.rnd = frameField.getInteger(); + switchnode.rnd = childField.getInteger(); } /**/ @@ -108,7 +110,8 @@ { ObjEditor oe = objEditor; - Remove(frameField); + //Remove(childField); + oe.ctrlPanel.remove(this.childPanel); super.closeUI(); } @@ -124,7 +127,7 @@ } RandomNode switchnode; - cNumberSlider frameField; + cNumberSlider childField; ObjectUI parent; diff --git a/SuperEditor.java b/SuperEditor.java index b7632c5..f3e5c59 100644 --- a/SuperEditor.java +++ b/SuperEditor.java @@ -8,6 +8,8 @@ import javax.swing.*; import javax.swing.event.*; +import grafeme.ui.*; + class SuperEditor extends BiparamEditor implements ChangeListener, ObjectUI // ActionListener { /* @@ -46,38 +48,29 @@ void SetupUI2(ObjEditor oe) { super.SetupUI2(oe); - ObjEditor.aConstraints.gridwidth = 1; - oe.ctrlPanel.add(northLabel = new JLabel("XY Exp"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); - ObjEditor.aConstraints.fill = GridBagConstraints.HORIZONTAL; - ObjEditor.aConstraints.gridx += 1; - ObjEditor.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.ctrlPanel.add(northField = new NumberSlider(0.0001,20,-1), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); - ObjEditor.aConstraints.gridx = 0; - ObjEditor.aConstraints.gridy += 1; - ObjEditor.aConstraints.gridwidth = 1; - ObjEditor.aConstraints.fill = GridBagConstraints.NONE; - oe.ctrlPanel.add(eastLabel = new JLabel("Z Exp"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); - ObjEditor.aConstraints.gridx += 1; - ObjEditor.aConstraints.fill = GridBagConstraints.HORIZONTAL; - ObjEditor.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; - oe.ctrlPanel.add(eastField = new NumberSlider(0.0001,20,-1), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); - ObjEditor.aConstraints.gridx = 0; - ObjEditor.aConstraints.gridy += 1; - ObjEditor.aConstraints.gridwidth = 1; - ObjEditor.aConstraints.gridwidth = 3; -// ObjEditor.aConstraints.anchor = GridBagConstraints.WEST; - oe.ctrlPanel.add(optionCB = new JCheckBox("Reverse", (superE.radius<0)), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); + + northPanel = new cGridBag(); + + northPanel.add(northLabel = new JLabel("XY Exp")); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); + northPanel.add(northField = new cNumberSlider(this, 0.0001,20,-1)); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); + oe.ctrlPanel.add(northPanel); + + oe.ctrlPanel.Return(); + eastPanel = new cGridBag(); + eastPanel.add(eastLabel = new JLabel("Z Exp")); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); + eastPanel.add(eastField = new cNumberSlider(this, 0.0001,20,-1)); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); + oe.ctrlPanel.add(eastPanel); + + oe.ctrlPanel.Return(); + // ObjEditor.aConstraints.anchor = GridBagConstraints.WEST; + oe.ctrlPanel.add(optionCB = new JCheckBox("Reverse", (superE.radius<0))); //, ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount()-2); optionCB.addItemListener(this); -// ObjEditor.aConstraints.anchor = GridBagConstraints.EAST; - ObjEditor.aConstraints.gridwidth = 1; - ObjEditor.aConstraints.gridx = 0; - ObjEditor.aConstraints.gridy += 1; - northField.setFloat(superE.north); + + oe.ctrlPanel.Return(); + + northField.setFloat(superE.north); eastField.setFloat(superE.east); - northField.addChangeListener(this); - eastField.addChangeListener(this); - ObjEditor.aConstraints.fill = GridBagConstraints.NONE; - } + } public void closeUI() { @@ -87,10 +80,12 @@ eastField.removeChangeListener(this); optionCB.removeItemListener(this); oe.ctrlPanel.remove(optionCB); - oe.ctrlPanel.remove(northField); - oe.ctrlPanel.remove(eastField); - oe.ctrlPanel.remove(northLabel); - oe.ctrlPanel.remove(eastLabel); + oe.ctrlPanel.remove(northPanel); + oe.ctrlPanel.remove(eastPanel); +// oe.ctrlPanel.remove(northField); +// oe.ctrlPanel.remove(eastField); +// oe.ctrlPanel.remove(northLabel); +// oe.ctrlPanel.remove(eastLabel); //oe.ctrlPanel.repaint(); super.closeUI(); @@ -184,9 +179,11 @@ Superellipsoid superE; JLabel northLabel; JLabel eastLabel; - NumberSlider northField; - NumberSlider eastField; + cNumberSlider northField; + cNumberSlider eastField; + cGridBag northPanel; + cGridBag eastPanel; //BiparamEditor objEditor; } diff --git a/SwitchEditor.java b/SwitchEditor.java index 08c5be3..e6d6892 100644 --- a/SwitchEditor.java +++ b/SwitchEditor.java @@ -81,11 +81,11 @@ // // frameField.setInteger(frameselect.child); - frameField = AddSlider(oe.ctrlPanel, "Child: ", 0, switchnode.getNumFrames()-1, switchnode.child); - Return(); + frameField = (cNumberSlider)AddSlider(oe.ctrlPanel, "Child: ", 0, switchnode.getNumFrames()-1, switchnode.child).getComponent(1); + oe.ctrlPanel.Return(); - speedField = AddSlider(oe.ctrlPanel, "Damp: ", 0, 500, switchnode.speed); - Return(); + speedField = (cNumberSlider)AddSlider(oe.ctrlPanel, "Damp: ", 0, 500, switchnode.speed).getComponent(1); + oe.ctrlPanel.Return(); // oe.aConstraints.gridy += 1; // diff --git a/TorusEditor.java b/TorusEditor.java index 769c3a2..7ccb126 100644 --- a/TorusEditor.java +++ b/TorusEditor.java @@ -39,10 +39,13 @@ { super.SetupUI2(oe); - majorField = AddSlider(oe.ctrlPanel, "Major Rad:", 0, 10.0, torus.major, 1); - Return(); - minorField = AddSlider(oe.ctrlPanel, "Minor Rad:", 0, 10.0, torus.minor, 1); - Return(); + majorPanel = AddSlider(oe.ctrlPanel, "Major Rad:", 0, 10.0, torus.major, 1); + majorField = (cNumberSlider)majorPanel.getComponent(1); + oe.ctrlPanel.Return(); + + minorPanel = AddSlider(oe.ctrlPanel, "Minor Rad:", 0, 10.0, torus.minor, 1); + minorField = (cNumberSlider)minorPanel.getComponent(1); + oe.ctrlPanel.Return(); // oe.ctrlPanel.add(majorLabel = new JLabel("Major Rad"), oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); // oe.aConstraints.gridwidth = ObjEditor.GRIDWIDTH; // oe.aConstraints.gridx += 1; @@ -79,8 +82,10 @@ // oe.ctrlPanel.remove(majorLabel); // oe.ctrlPanel.remove(minorLabel); // //oe.ctrlPanel.repaint(); - Remove(majorField); - Remove(minorField); +// Remove(majorField); +// Remove(minorField); + oe.ctrlPanel.remove(majorPanel); + oe.ctrlPanel.remove(minorPanel); super.closeUI(); } @@ -159,5 +164,7 @@ cNumberSlider majorField; cNumberSlider minorField; + cGridBag majorPanel; + cGridBag minorPanel; //BiparamEditor objEditor; } diff --git a/cSpring.java b/cSpring.java index 914577b..9dd6edc 100644 --- a/cSpring.java +++ b/cSpring.java @@ -1208,7 +1208,10 @@ } if (edges.size()%2 != 0) + { + new Exception().printStackTrace(); System.exit(0); + } } // if (clearsprings) @@ -1516,7 +1519,10 @@ second = springs.get((i+1)%springs.size()); if (first == second) + { + new Exception().printStackTrace(); System.exit(0); + } temp.set(first.GetOther(this).position); temp.sub(position); @@ -1646,7 +1652,10 @@ Spring second = springs.get((i+1)%springs.size()); if (first == second) + { + new Exception().printStackTrace(); System.exit(0); + } temp.set(first.GetOther(this).position); temp.sub(position); @@ -3289,6 +3298,7 @@ if (N2.mass == Float.MAX_VALUE) { + new Exception().printStackTrace(); System.exit(0); magnitude *= solidity; // * K; diff --git a/cSpringEditor.java b/cSpringEditor.java index 788ebea..989e761 100644 --- a/cSpringEditor.java +++ b/cSpringEditor.java @@ -8,7 +8,6 @@ class cSpringEditor extends ObjEditor implements ItemListener, ChangeListener, ObjectUI, ActionListener { - cSpringEditor(cSpring inBP, GroupEditor callee) { super(inBP, callee); @@ -53,17 +52,19 @@ { super.SetupUI2(oe); + firstrowPanel = new cGridBag(); + //// oe.ctrlPanel.add(animate = new JCheckBox("Live", spring.live), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); //// ObjEditor.aConstraints.gridx += 1; - freezeButton = AddButton(oe, "Freeze"); + freezeButton = AddButton(firstrowPanel, "Freeze"); // oe.ctrlPanel.add(freezeButton = new cButton("Freeze"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; //// oe.ctrlPanel.add(stepButton = new cButton("Step"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); //// ObjEditor.aConstraints.gridx += 1; - avoiderButton = AddButton(oe, "Avoid"); + avoiderButton = AddButton(firstrowPanel, "Avoid"); // oe.ctrlPanel.add(avoiderButton = new cButton("Avoid"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - autofreeze = AddCheckBox(oe, "Blow", spring.IsAutoFreeze()); + autofreeze = AddCheckBox(firstrowPanel, "Blow", spring.IsAutoFreeze()); // oe.ctrlPanel.add(autofreeze = new JCheckBox("Blow", spring.IsAutoFreeze()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; // Return(); @@ -71,17 +72,20 @@ // ObjEditor.aConstraints.gridx = 0; //// oe.ctrlPanel.add(resetButton = new cButton("Reset"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); //// ObjEditor.aConstraints.gridx += 1; - fastnormals = AddCheckBox(oe, "Fast", spring.IsFastNormals()); + fastnormals = AddCheckBox(firstrowPanel, "Fast", spring.IsFastNormals()); // oe.ctrlPanel.add(fastnormals = new JCheckBox("Fast", spring.IsFastNormals()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - springs = AddCheckBox(oe, "Show", spring.showsprings); + springs = AddCheckBox(firstrowPanel, "Show", spring.showsprings); // oe.ctrlPanel.add(springs = new JCheckBox("Springs", spring.showsprings), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - info = AddCheckBox(oe, "Info", spring.ShowInfo()); + info = AddCheckBox(firstrowPanel, "Info", spring.ShowInfo()); // oe.ctrlPanel.add(info = new JCheckBox("Info", spring.ShowInfo()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); - Return(); + oe.ctrlPanel.add(firstrowPanel); + oe.ctrlPanel.Return(); // ObjEditor.aConstraints.gridy += 1; // ObjEditor.aConstraints.gridx = 0; + + stiffnessPanel = AddSlider(oe.ctrlPanel, "Stiffness:", 0, 20.0, Math.log(spring.K+1), 1); // ObjEditor.aConstraints.anchor = GridBagConstraints.WEST; // ObjEditor.aConstraints.gridwidth = 1; @@ -96,8 +100,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - stiffnessField = AddSlider(oe.ctrlPanel, "Stiffness:", 0, 20.0, Math.log(spring.K+1), 1); - Return(); + stiffnessField = (cNumberSlider)stiffnessPanel.getComponent(1); + oe.ctrlPanel.Return(); + massPanel = AddSlider(oe.ctrlPanel, "Mass:", 0, 20.0, Math.log(spring.M+1), 1); // oe.ctrlPanel.add(massLabel = new JLabel("Mass"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // massLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -109,8 +114,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - massField = AddSlider(oe.ctrlPanel, "Mass:", 0, 20.0, Math.log(spring.M+1), 1); - Return(); + massField = (cNumberSlider)massPanel.getComponent(1); + oe.ctrlPanel.Return(); + gravityPanel = AddSlider(oe.ctrlPanel, "Gravity:", 0, 20.0, Math.log(spring.G.acceleration+1), 1); // oe.ctrlPanel.add(gravityLabel = new JLabel("Gravity"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // gravityLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -122,8 +128,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - gravityField = AddSlider(oe.ctrlPanel, "Gravity:", 0, 20.0, Math.log(spring.G.acceleration+1), 1); - Return(); + gravityField = (cNumberSlider)gravityPanel.getComponent(1); + oe.ctrlPanel.Return(); + normalPanel = AddSlider(oe.ctrlPanel, "Normal:", 0, 20.0, Math.log(spring.normalpush+1), 1); // oe.ctrlPanel.add(normalLabel = new JLabel("Normal"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // normalLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -135,8 +142,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - normalField = AddSlider(oe.ctrlPanel, "Normal:", 0, 20.0, Math.log(spring.normalpush+1), 1); - Return(); + normalField = (cNumberSlider)normalPanel.getComponent(1); + oe.ctrlPanel.Return(); + restlengthPanel = AddSlider(oe.ctrlPanel, "Restlength:", 0, 2.0, spring.restlengthFactor, 1); /**/ // oe.ctrlPanel.add(thicknessLabel = new JLabel("Restlength"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); @@ -149,8 +157,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - restlengthField = AddSlider(oe.ctrlPanel, "Restlength:", 0, 2.0, spring.restlengthFactor, 1); - Return(); + restlengthField = (cNumberSlider)restlengthPanel.getComponent(1); + oe.ctrlPanel.Return(); + distortionPanel = AddSlider(oe.ctrlPanel, "Distortion:", 0, 2.0, spring.distortion, 1); // oe.ctrlPanel.add(distortionLabel = new JLabel("Distortion"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // distortionLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -162,9 +171,10 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - distortionField = AddSlider(oe.ctrlPanel, "Distortion:", 0, 2.0, spring.distortion, 1); - Return(); + distortionField = (cNumberSlider)distortionPanel.getComponent(1); + oe.ctrlPanel.Return(); /**/ + limitPanel = AddSlider(oe.ctrlPanel, "Limit:", 0, 20.0, Math.log(spring.limit+1), 1); // oe.ctrlPanel.add(limitLabel = new JLabel("Limit"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // limitLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -176,8 +186,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - limitField = AddSlider(oe.ctrlPanel, "Limit:", 0, 20.0, Math.log(spring.limit+1), 1); - Return(); + limitField = (cNumberSlider)limitPanel.getComponent(1); + oe.ctrlPanel.Return(); + viscosityPanel = AddSlider(oe.ctrlPanel, "Viscosity:", 0, 20.0, Math.log(spring.W.wind+1), 1); // oe.ctrlPanel.add(viscosityLabel = new JLabel("Viscosity"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // viscosityLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -189,8 +200,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - viscosityField = AddSlider(oe.ctrlPanel, "Viscosity:", 0, 20.0, Math.log(spring.W.wind+1), 1); - Return(); + viscosityField = (cNumberSlider)viscosityPanel.getComponent(1); + oe.ctrlPanel.Return(); + fluidspeedPanel = AddSlider(oe.ctrlPanel, "Speed:", 0, 20.0, Math.log(spring.W.speed+1), 1); // oe.ctrlPanel.add(fluidspeedLabel = new JLabel("Speed"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // fluidspeedLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -202,8 +214,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - fluidspeedField = AddSlider(oe.ctrlPanel, "Speed:", 0, 20.0, Math.log(spring.W.speed+1), 1); - Return(); + fluidspeedField = (cNumberSlider)fluidspeedPanel.getComponent(1); + oe.ctrlPanel.Return(); + liftPanel = AddSlider(oe.ctrlPanel, "Lift:", 0, 1.0, spring.W.lift, 1); // oe.ctrlPanel.add(liftLabel = new JLabel("Lift"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // liftLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -215,8 +228,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - liftField = AddSlider(oe.ctrlPanel, "Lift:", 0, 1.0, spring.W.lift, 1); - Return(); + liftField = (cNumberSlider)liftPanel.getComponent(1); + oe.ctrlPanel.Return(); + frictionPanel = AddSlider(oe.ctrlPanel, "Friction:", 0, 1.0, spring.friction, 1); // oe.ctrlPanel.add(frictionLabel = new JLabel("Friction"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // frictionLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -228,8 +242,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - frictionField = AddSlider(oe.ctrlPanel, "Friction:", 0, 1.0, spring.friction, 1); - Return(); + frictionField = (cNumberSlider)frictionPanel.getComponent(1); + oe.ctrlPanel.Return(); + timestepPanel = AddSlider(oe.ctrlPanel, "Timestep:", 0, 1.0, spring.timestep, 1); // oe.ctrlPanel.add(timestepLabel = new JLabel("Timestep"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // timestepLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -241,8 +256,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - timestepField = AddSlider(oe.ctrlPanel, "Timestep:", 0, 1.0, spring.timestep, 1); - Return(); + timestepField = (cNumberSlider)timestepPanel.getComponent(1); + oe.ctrlPanel.Return(); + poseslownessPanel = AddSlider(oe.ctrlPanel, "Slowness:", 0, 100.0, spring.slowness, 1); // oe.ctrlPanel.add(poseslownessLabel = new JLabel("Slowness"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // timestepLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -254,8 +270,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - poseslownessField = AddSlider(oe.ctrlPanel, "Slowness:", 0, 100.0, spring.slowness, 1); - Return(); + poseslownessField = (cNumberSlider)poseslownessPanel.getComponent(1); + oe.ctrlPanel.Return(); + dampingPanel = AddSlider(oe.ctrlPanel, "Damping:", 0, 20.0, -Math.log(spring.damping)*10, 1); // oe.ctrlPanel.add(dampingLabel = new JLabel("Damping"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // dampingLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -267,8 +284,9 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - dampingField = AddSlider(oe.ctrlPanel, "Damping:", 0, 20.0, -Math.log(spring.damping)*10, 1); - Return(); + dampingField = (cNumberSlider)dampingPanel.getComponent(1); + oe.ctrlPanel.Return(); + solidityPanel = AddSlider(oe.ctrlPanel, "Solidity:", 0, 20.0, Math.log(spring.solidity+1), 1); // oe.ctrlPanel.add(solidityLabel = new JLabel("Solidity"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // solidityLabel.setHorizontalAlignment(SwingConstants.TRAILING); @@ -280,8 +298,8 @@ // ObjEditor.aConstraints.gridwidth = 1; // //ObjEditor.aConstraints.fill = 0; // ObjEditor.aConstraints.gridx -= 1; - solidityField = AddSlider(oe.ctrlPanel, "Solidity:", 0, 20.0, Math.log(spring.solidity+1), 1); - Return(); + solidityField = (cNumberSlider)solidityPanel.getComponent(1); + oe.ctrlPanel.Return(); //System.out.println("K = " + spring.K + "; G = " + spring.G.acceleration + "; H = " + spring.H + "; V = " + spring.W.wind); @@ -316,52 +334,61 @@ // solidityField.setFloat(Math.log(spring.solidity+1)); // solidityField.addChangeListener(this); + secondrowPanel = new cGridBag(); + // ObjEditor.aConstraints.gridwidth = 1; // ObjEditor.aConstraints.anchor = GridBagConstraints.WEST; // oe.ctrlPanel.add(revertButton = new cButton("Revert"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - revertButton = AddButton(oe, "Revert"); + revertButton = AddButton(secondrowPanel, "Revert"); // oe.ctrlPanel.add(epsequal = new JCheckBox("Eps", spring.IsEpsEqual()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - epsequal = AddCheckBox(oe, "Eps", spring.IsEpsEqual()); + epsequal = AddCheckBox(secondrowPanel, "Eps", spring.IsEpsEqual()); // oe.ctrlPanel.add(linkUV = new JCheckBox("link UV", spring.IsLinkUV()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridy += 1; // ObjEditor.aConstraints.gridx = 0; - linkUV = AddCheckBox(oe, "UV", spring.IsLinkUV()); + linkUV = AddCheckBox(secondrowPanel, "UV", spring.IsLinkUV()); // oe.ctrlPanel.add(poseCB = new JCheckBox("Change:", spring.IsPoseMesh()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - poseCB = AddCheckBox(oe, "Loop", spring.IsPoseMesh()); + poseCB = AddCheckBox(secondrowPanel, "Loop", spring.IsPoseMesh()); // oe.ctrlPanel.add(poseButton = new cButton("Pose"), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridy += 1; // ObjEditor.aConstraints.gridx = 0; - poseButton = AddButton(oe, "Pose"); - Return(); - - poseField = AddSlider(oe.ctrlPanel, "Pose:", 0, spring.posegroup==null?0:spring.posegroup.size()-1, spring.poseid); - Return(); + poseButton = AddButton(secondrowPanel, "Pose"); + oe.ctrlPanel.add(secondrowPanel); + oe.ctrlPanel.Return(); + + posePanel = AddSlider(oe.ctrlPanel, "Pose:", 0, spring.posegroup==null?0:spring.posegroup.size()-1, spring.poseid); + + poseField = (cNumberSlider)posePanel.getComponent(1); + oe.ctrlPanel.Return(); + + thirdrowPanel = new cGridBag(); + // oe.ctrlPanel.add(solid = new JCheckBox("Solid", spring.IsSolid()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - solid = AddCheckBox(oe, "3D", spring.IsSolid()); + solid = AddCheckBox(thirdrowPanel, "3D", spring.IsSolid()); // oe.ctrlPanel.add(soft = new JCheckBox("Soft", spring.IsSoft()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridy += 1; // ObjEditor.aConstraints.gridx = 0; - soft = AddCheckBox(oe, "Soft", spring.IsSoft()); + soft = AddCheckBox(thirdrowPanel, "Soft", spring.IsSoft()); // oe.ctrlPanel.add(fold = new JCheckBox("Fold", spring.IsFold()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - fold = AddCheckBox(oe, "Fold", spring.IsFold()); + fold = AddCheckBox(thirdrowPanel, "Fold", spring.IsFold()); // oe.ctrlPanel.add(unfold = new JCheckBox("Unfold", spring.IsUnfold()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - unfold = AddCheckBox(oe, "Unf", spring.IsUnfold()); + unfold = AddCheckBox(thirdrowPanel, "Unf", spring.IsUnfold()); // oe.ctrlPanel.add(normalizeCounts = new JCheckBox("Counts", spring.IsNormalize()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; // ObjEditor.aConstraints.gridy += 1; // ObjEditor.aConstraints.gridx = 0; - normalizeCounts = AddCheckBox(oe, "Cnt", spring.IsNormalize()); + normalizeCounts = AddCheckBox(thirdrowPanel, "Cnt", spring.IsNormalize()); // Invariants?... oe.ctrlPanel.add(updatehandles = new JCheckBox("Update handles", spring.IsUpdateHandles()), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; - Return(); + oe.ctrlPanel.add(thirdrowPanel); + oe.ctrlPanel.Return(); // oe.ctrlPanel.add(freezeButton = new cButton(" Freeze "), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); // ObjEditor.aConstraints.gridx += 1; // oe.ctrlPanel.add(stepButton = new cButton(" Step "), ObjEditor.aConstraints, oe.ctrlPanel.getComponentCount() - 2); @@ -595,21 +622,40 @@ { ObjEditor oe = objEditor; - Remove(stiffnessField); - Remove(massField); - Remove(gravityField); - Remove(normalField); - Remove(limitField); - Remove(restlengthField); - Remove(distortionField); - Remove(viscosityField); - Remove(fluidspeedField); - Remove(liftField); - Remove(frictionField); - Remove(timestepField); - Remove(poseslownessField); - Remove(dampingField); - Remove(solidityField); +// Remove(stiffnessField); +// Remove(massField); +// Remove(gravityField); +// Remove(normalField); +// Remove(limitField); +// Remove(restlengthField); +// Remove(distortionField); +// Remove(viscosityField); +// Remove(fluidspeedField); +// Remove(liftField); +// Remove(frictionField); +// Remove(timestepField); +// Remove(poseslownessField); +// Remove(dampingField); +// Remove(solidityField); + objEditor.ctrlPanel.remove(firstrowPanel); + objEditor.ctrlPanel.remove(secondrowPanel); + objEditor.ctrlPanel.remove(thirdrowPanel); + objEditor.ctrlPanel.remove(stiffnessPanel); + objEditor.ctrlPanel.remove(massPanel); + objEditor.ctrlPanel.remove(gravityPanel); + objEditor.ctrlPanel.remove(normalPanel); + objEditor.ctrlPanel.remove(limitPanel); + objEditor.ctrlPanel.remove(restlengthPanel); + objEditor.ctrlPanel.remove(distortionPanel); + objEditor.ctrlPanel.remove(viscosityPanel); + objEditor.ctrlPanel.remove(fluidspeedPanel); + objEditor.ctrlPanel.remove(liftPanel); + objEditor.ctrlPanel.remove(frictionPanel); + objEditor.ctrlPanel.remove(timestepPanel); + objEditor.ctrlPanel.remove(poseslownessPanel); + objEditor.ctrlPanel.remove(dampingPanel); + objEditor.ctrlPanel.remove(solidityPanel); + objEditor.ctrlPanel.remove(posePanel); // stiffnessField.removeChangeListener(this); // massField.removeChangeListener(this); // gravityField.removeChangeListener(this); @@ -754,10 +800,8 @@ cNumberSlider massField; cNumberSlider gravityField; cNumberSlider normalField; - cNumberSlider mgravityField; cNumberSlider fluidspeedField; cNumberSlider viscosityField; - cNumberSlider floorField; cNumberSlider limitField; cNumberSlider restlengthField; cNumberSlider distortionField; @@ -770,6 +814,27 @@ cNumberSlider poseField; + cGridBag firstrowPanel; + cGridBag secondrowPanel; + cGridBag thirdrowPanel; + + cGridBag stiffnessPanel; + cGridBag massPanel; + cGridBag gravityPanel; + cGridBag normalPanel; + cGridBag fluidspeedPanel; + cGridBag viscosityPanel; + cGridBag limitPanel; + cGridBag restlengthPanel; + cGridBag distortionPanel; + cGridBag dampingPanel; + cGridBag frictionPanel; + cGridBag liftPanel; + cGridBag poseslownessPanel; + cGridBag solidityPanel; + cGridBag timestepPanel; + cGridBag posePanel; + // JCheckBox animate; JCheckBox thick; JCheckBox single; -- Gitblit v1.6.2