Normand Briere
2019-09-02 0050edcb88bac197578ec518425c8c1e1b4e469f
Scale slider
3 files modified
2 files added
64 ■■■■■ changed files
GroupEditor.java 26 ●●●●● patch | view | raw | blame | history
ObjEditor.java 26 ●●●●● patch | view | raw | blame | history
Object3D.java 12 ●●●●● patch | view | raw | blame | history
icons/figure.png patch | view | raw | blame | history
icons/figure256.png patch | view | raw | blame | history
GroupEditor.java
....@@ -1330,6 +1330,7 @@
13301330
13311331 oe.treePanel.add(versionManagerPanel);
13321332 oe.treePanel.Return();
1333
+
13331334 versionSliderPane = AddSlider(oe.treePanel, "Version", 0, 0, 0);
13341335 versionSlider = (cNumberSlider)versionSliderPane.getComponent(1);
13351336 versionSliderPane.preferredHeight = 3;
....@@ -4304,6 +4305,31 @@
43044305 ResetTransform(-1);
43054306 }
43064307
4308
+ void ScaleSelection(int scale)
4309
+ {
4310
+ Object3D obj;
4311
+ for (Enumeration e = group.selection.elements(); e.hasMoreElements();)
4312
+ {
4313
+ obj = (Object3D)e.nextElement();
4314
+
4315
+ if (obj.toParent == null)
4316
+ continue;
4317
+
4318
+ obj.Scale(scale);
4319
+
4320
+ if (obj.parent == null)
4321
+ {
4322
+ System.out.println("NULL PARENT!");
4323
+ // new Exception().printStackTrace();
4324
+ }
4325
+ else
4326
+ TouchTransform(obj);
4327
+ //obj.parent.Touch();
4328
+ }
4329
+
4330
+ refreshContents();
4331
+ }
4332
+
43074333 void ResetTransform(int mask)
43084334 {
43094335 Object3D obj;
ObjEditor.java
....@@ -555,7 +555,7 @@
555555 // }
556556 // }
557557 // }
558
- cameraView.transformMode = objectTabbedPane.getSelectedIndex() == 4;
558
+ cameraView.transformMode = objectTabbedPane.getSelectedIndex() == 5;
559559
560560 // refreshContents(false); // To refresh Info tab
561561 cameraView.repaint();
....@@ -1726,6 +1726,12 @@
17261726 //XYZPanel.setName("XYZ");
17271727
17281728 transformPanel.add(resetTransformPanel);
1729
+
1730
+ cGridBag scalePanel = AddSlider(transformPanel, "Scale", 1, 10, 1);
1731
+ scalePanel.preferredHeight = 2;
1732
+ scaleSlider = (cNumberSlider)scalePanel.getComponent(1);
1733
+ transformPanel.add(scalePanel);
1734
+
17291735 transformPanel.add(XYZPanel);
17301736
17311737 /*
....@@ -1781,7 +1787,7 @@
17811787 figurePanel = new cGridBag();
17821788 figurePanel.add(new cButton("FIGURES amd POSES coming soon!"));
17831789 objectTabbedPane.add(figurePanel);
1784
- objectTabbedPane.setIconAt(objectTabCount, GetIcon("icons/run.png"));
1790
+ objectTabbedPane.setIconAt(objectTabCount, GetIcon("icons/figure.png"));
17851791 objectTabbedPane.setToolTipTextAt(objectTabCount++, "Figures and poses");
17861792
17871793 // JPanel north = new JPanel(new BorderLayout());
....@@ -5189,9 +5195,16 @@
51895195 cNumberSlider versionSlider;
51905196 cNumberSlider versionField;
51915197
5198
+ cNumberSlider scaleSlider;
5199
+
5200
+ void ScaleSelection(int scale)
5201
+ {
5202
+ }
5203
+
51925204 public void stateChanged(ChangeEvent e)
51935205 {
51945206 // assert(false);
5207
+ // Main version slider
51955208 if (e.getSource() == versionSlider)
51965209 {
51975210 if (muteSlider)
....@@ -5212,6 +5225,7 @@
52125225 return;
52135226 }
52145227
5228
+ // Version slider of edited object
52155229 if (e.getSource() == versionField)
52165230 {
52175231 int version = versionField.getInteger();
....@@ -5225,6 +5239,14 @@
52255239 return;
52265240 }
52275241
5242
+ if (e.getSource() == scaleSlider)
5243
+ {
5244
+ int scale = scaleSlider.getInteger();
5245
+
5246
+ ScaleSelection(scale);
5247
+ return;
5248
+ }
5249
+
52285250 if (freezematerial)
52295251 {
52305252 return;
Object3D.java
....@@ -3356,6 +3356,18 @@
33563356 }
33573357 }
33583358
3359
+ public void Scale(int scale)
3360
+ {
3361
+ Object3D obj = this;
3362
+
3363
+ obj.toParent[0][0] = obj.toParent[1][1] = obj.toParent[2][2] = scale;
3364
+ obj.toParent[0][1] = obj.toParent[1][0] = obj.toParent[2][0] = 0;
3365
+ obj.toParent[0][2] = obj.toParent[1][2] = obj.toParent[2][1] = 0;
3366
+ obj.fromParent[0][0] = obj.fromParent[1][1] = obj.fromParent[2][2] = 1/scale;
3367
+ obj.fromParent[0][1] = obj.fromParent[1][0] = obj.fromParent[2][0] = 0;
3368
+ obj.fromParent[0][2] = obj.fromParent[1][2] = obj.fromParent[2][1] = 0;
3369
+ }
3370
+
33593371 public void TextureRatioTransform(int axis)
33603372 {
33613373 cTexture tex = GetTextures();
icons/figure.png
Binary files differ
icons/figure256.png
Binary files differ