Normand Briere
2019-08-23 60cec91731a350fe67e9b5ffe7a00d70e9026314
GroupEditor.java
....@@ -417,13 +417,13 @@
417417
418418 assert(false);
419419
420
- if (copy.versionlist == null)
421
- {
422
- copy.versionlist = new Object3D[100];
423
- copy.versionindex = -1;
424
-
425
- //Save(true);
426
- }
420
+// if (copy.versionlist == null)
421
+// {
422
+// copy.versionlist = new Object3D[100];
423
+// copy.versionindex = -1;
424
+//
425
+// //Save(true);
426
+// }
427427
428428 if(ui)
429429 SetupUI(objEditor);
....@@ -446,13 +446,13 @@
446446
447447 ((cRadio)radioPanel.getComponent(0)).SetCamera(cameraView.renderCamera, true);
448448
449
- if (copy.versionlist == null)
450
- {
451
- copy.versionlist = new Object3D[100];
452
- copy.versionindex = -1;
453
-
454
- //Save(true);
455
- }
449
+// if (copy.versionlist == null)
450
+// {
451
+// copy.versionlist = new Object3D[100];
452
+// copy.versionindex = -1;
453
+//
454
+// //Save(true);
455
+// }
456456 }
457457
458458 void CloneSelection(boolean supports)
....@@ -835,6 +835,8 @@
835835 }
836836
837837 oe.menuBar.add(menu = new Menu("Attributes"));
838
+ clearVersionsItem = menu.add(new MenuItem("Clear Versions"));
839
+ clearVersionsItem.addActionListener(this);
838840 clearMaterialsItem = menu.add(new MenuItem("Clear Materials"));
839841 clearMaterialsItem.addActionListener(this);
840842 resetAllItem = menu.add(new MenuItem("Reset All"));
....@@ -2127,24 +2129,24 @@
21272129 switch(axis)
21282130 {
21292131 case 0 :
2130
- vert1.x = minima.x; vert1.y = minima.y; vert1.z = minima.z;
2131
- vert2.x = minima.x; vert2.y = maxima.y; vert2.z = minima.z;
2132
- vert3.x = minima.x; vert3.y = minima.y; vert3.z = maxima.z;
2133
- vert4.x = minima.x; vert4.y = maxima.y; vert4.z = maxima.z;
2132
+ vert1.x = minima.x + 0.001f; vert1.y = minima.y; vert1.z = minima.z;
2133
+ vert2.x = minima.x + 0.001f; vert2.y = maxima.y; vert2.z = minima.z;
2134
+ vert3.x = minima.x + 0.001f; vert3.y = minima.y; vert3.z = maxima.z;
2135
+ vert4.x = minima.x + 0.001f; vert4.y = maxima.y; vert4.z = maxima.z;
21342136 norm = cVector.X;
21352137 break;
21362138 case 1 :
2137
- vert1.x = minima.x; vert1.y = minima.y; vert1.z = minima.z;
2138
- vert2.x = maxima.x; vert2.y = minima.y; vert2.z = minima.z;
2139
- vert3.x = minima.x; vert3.y = minima.y; vert3.z = maxima.z;
2140
- vert4.x = maxima.x; vert4.y = minima.y; vert4.z = maxima.z;
2139
+ vert1.x = minima.x; vert1.y = minima.y + 0.001f; vert1.z = minima.z;
2140
+ vert2.x = maxima.x; vert2.y = minima.y + 0.001f; vert2.z = minima.z;
2141
+ vert3.x = minima.x; vert3.y = minima.y + 0.001f; vert3.z = maxima.z;
2142
+ vert4.x = maxima.x; vert4.y = minima.y + 0.001f; vert4.z = maxima.z;
21412143 norm = cVector.Y;
21422144 break;
21432145 case 2 :
2144
- vert1.x = minima.x; vert1.y = minima.y; vert1.z = minima.z;
2145
- vert2.x = maxima.x; vert2.y = minima.y; vert2.z = minima.z;
2146
- vert3.x = minima.x; vert3.y = maxima.y; vert3.z = minima.z;
2147
- vert4.x = maxima.x; vert4.y = maxima.y; vert4.z = minima.z;
2146
+ vert1.x = minima.x; vert1.y = minima.y; vert1.z = minima.z + 0.001f;
2147
+ vert2.x = maxima.x; vert2.y = minima.y; vert2.z = minima.z + 0.001f;
2148
+ vert3.x = minima.x; vert3.y = maxima.y; vert3.z = minima.z + 0.001f;
2149
+ vert4.x = maxima.x; vert4.y = maxima.y; vert4.z = minima.z + 0.001f;
21482150 norm = cVector.Z;
21492151 break;
21502152 }
....@@ -3466,6 +3468,10 @@
34663468 {
34673469 ClearMaterials();
34683470 } else
3471
+ if (source == clearVersionsItem)
3472
+ {
3473
+ ClearVersions();
3474
+ } else
34693475 if (source == liveleavesItem)
34703476 {
34713477 LiveLeaves(true);
....@@ -4142,12 +4148,14 @@
41424148 // and check if any of these nodes are reachable below the root.
41434149 Grafreed.grafreed.universe.TagObjects(copy, true);
41444150
4145
- if (!copy.HasTags())
4151
+ if (copy.versionlist == null && !copy.HasTags())
41464152 {
41474153 copy.versionlist = new Object3D[100];
41484154
4149
- Save(true);
4155
+ //Save(true);
41504156 }
4157
+ else
4158
+ copy.versionindex = -2;
41514159
41524160 Grafreed.grafreed.universe.TagObjects(copy, false);
41534161 }
....@@ -5110,6 +5118,12 @@
51105118 void ClearMaterials()
51115119 {
51125120 group.selection.ClearMaterials();
5121
+ refreshContents();
5122
+ }
5123
+
5124
+ void ClearVersions()
5125
+ {
5126
+ group.selection.ClearVersions();
51135127 refreshContents();
51145128 }
51155129
....@@ -6354,6 +6368,7 @@
63546368 private MenuItem clipMeshItem;
63556369 private MenuItem smoothMeshItem;
63566370 private MenuItem clearMaterialsItem;
6371
+ private MenuItem clearVersionsItem;
63576372
63586373 private MenuItem liveleavesItem;
63596374 private MenuItem unliveleavesItem;