Normand Briere
2019-05-02 c209bbe1cf788c9af3dcffea7667c830170a3f1f
GroupEditor.java
....@@ -150,6 +150,8 @@
150150
151151 void SetupMenu2(ObjEditor oe)
152152 {
153
+ if (Globals.ADVANCED)
154
+ {
153155 oe.cameraMenu.add(lookAtItem = new MenuItem("Set Interest"));
154156 //cameraMenu.add(lookFromItem = new MenuItem("Look From Selection"));
155157 //cameraMenu.add(switchItem = new MenuItem("Reverse View"));
....@@ -161,36 +163,48 @@
161163 lookAtItem.addActionListener(this);
162164 //lookFromItem.addActinoListener(this);
163165 //switchItem.addActionListener(this);
166
+ }
167
+
164168 Menu menu;
165169 oe.menuBar.add(menu = new Menu("Edit"));
166170 //editItem = menu.add(new MenuItem("Edit"));
167171 //editItem.addActionListener(this);
168172 duplicateItem = menu.add(new MenuItem("Duplicate"));
169173 duplicateItem.addActionListener(this);
170
- menu.add("-");
171
- cloneItem = menu.add(new MenuItem("Clone"));
172
- cloneItem.addActionListener(this);
173
- cloneSupportItem = menu.add(new MenuItem("Clone (+supports)"));
174
- cloneSupportItem.addActionListener(this);
175
- menu.add("-");
176174 cutItem = menu.add(new MenuItem("Cut"));
177175 cutItem.addActionListener(this);
178176 copyItem = menu.add(new MenuItem("Copy"));
179177 copyItem.addActionListener(this);
180178 pasteItem = menu.add(new MenuItem("Paste"));
181179 pasteItem.addActionListener(this);
180
+ menu.add("-");
181
+ cloneItem = menu.add(new MenuItem("Clone"));
182
+ cloneItem.addActionListener(this);
183
+ cloneSupportItem = menu.add(new MenuItem("Clone (+supports)"));
184
+ cloneSupportItem.addActionListener(this);
185
+ menu.add("-");
186
+ pasteIntoItem = menu.add(new MenuItem("Paste into"));
187
+ pasteIntoItem.addActionListener(this);
182188 pasteLinkItem = menu.add(new MenuItem("Paste link"));
183189 pasteLinkItem.addActionListener(this);
184190 pasteCloneItem = menu.add(new MenuItem("Paste clone"));
185191 pasteCloneItem.addActionListener(this);
186192 // pasteExpandItem = menu.add(new MenuItem("Paste expand"));
187193 // pasteExpandItem.addActionListener(this);
194
+ menu.add("-");
188195 clearItem = menu.add(new MenuItem("Clear"));
189196 clearItem.addActionListener(this);
197
+
198
+ if (Globals.ADVANCED)
199
+ {
200
+ // Deletes the cameras...
190201 clearAllItem = menu.add(new MenuItem("Clear All"));
191202 clearAllItem.addActionListener(this);
203
+ }
192204
193205 oe.menuBar.add(menu = new Menu("Setting"));
206
+ if (Globals.ADVANCED)
207
+ {
194208 resetMeshItem = menu.add(new MenuItem("Reset All"));
195209 resetMeshItem.addActionListener(this);
196210 stepAllItem = menu.add(new MenuItem("Step All"));
....@@ -200,6 +214,7 @@
200214 resetreferencesItem = menu.add(new MenuItem("Reset Mesh References"));
201215 resetreferencesItem.addActionListener(this);
202216 menu.add("-");
217
+ }
203218 overwriteGeoItem = menu.add(new MenuItem("Overwrite Geometry"));
204219 overwriteGeoItem.addActionListener(this);
205220 overwriteMatItem = menu.add(new MenuItem("Overwrite Material"));
....@@ -211,19 +226,26 @@
211226 overwriteUVItem = menu.add(new MenuItem("Overwrite UV"));
212227 overwriteUVItem.addActionListener(this);
213228 menu.add("-");
229
+ if (Globals.ADVANCED)
230
+ {
214231 generateMeshItem = menu.add(new MenuItem("Generate Meshes"));
215232 generateMeshItem.addActionListener(this);
216233 poseMeshItem = menu.add(new MenuItem("Set Pose Meshes"));
217234 poseMeshItem.addActionListener(this);
218235 menu.add("-");
236
+ }
219237 resetsupportItem = menu.add(new MenuItem("Reset support"));
220238 resetsupportItem.addActionListener(this);
221239 linkverticesItem = menu.add(new MenuItem("Link to Support"));
222240 linkverticesItem.addActionListener(this);
223241 relinkverticesItem = menu.add(new MenuItem("Re-link to Support"));
224242 relinkverticesItem.addActionListener(this);
243
+
244
+ if (Globals.ADVANCED)
245
+ {
225246 setMasterItem = menu.add(new MenuItem("Set Master Mesh"));
226247 setMasterItem.addActionListener(this);
248
+ }
227249
228250 oe.menuBar.add(menu = new Menu("Group"));
229251 grabItem = menu.add(new MenuItem("Grab"));
....@@ -234,7 +256,7 @@
234256 frontItem.addActionListener(this);
235257 compositeItem = menu.add(new MenuItem("Composite"));
236258 compositeItem.addActionListener(this);
237
- hideItem = menu.add(new MenuItem("Hide"));
259
+ hideItem = menu.add(new MenuItem("Hidden Group"));
238260 hideItem.addActionListener(this);
239261 ungroupItem = menu.add(new MenuItem("Ungroup"));
240262 ungroupItem.addActionListener(this);
....@@ -245,16 +267,20 @@
245267 switchGeoItem.addActionListener(this);
246268 switchTransfoItem = menu.add(new MenuItem("Switch Transform"));
247269 switchTransfoItem.addActionListener(this);
270
+ morphItem = menu.add(new MenuItem("Morph Group"));
271
+ morphItem.addActionListener(this);
272
+
273
+ if (Globals.ADVANCED)
274
+ {
248275 physicsItem = menu.add(new MenuItem("Physics"));
249276 physicsItem.addActionListener(this);
250277 frameselectorItem = menu.add(new MenuItem("Frame Selector"));
251278 frameselectorItem.addActionListener(this);
252
- morphItem = menu.add(new MenuItem("Morph"));
253
- morphItem.addActionListener(this);
254279 scriptNodeItem = menu.add(new MenuItem("Script Node"));
255280 scriptNodeItem.addActionListener(this);
256281 cameraItem = menu.add(new MenuItem("Camera"));
257282 cameraItem.addActionListener(this);
283
+ }
258284
259285 oe.menuBar.add(menu = new Menu("Object"));
260286 textureItem = menu.add(new MenuItem("Texture"));
....@@ -269,15 +295,18 @@
269295 shadowYItem.addActionListener(this);
270296 shadowZItem = menu.add(new MenuItem("Shadow Z"));
271297 shadowZItem.addActionListener(this);
298
+ if (Globals.ADVANCED)
299
+ {
272300 linkerItem = menu.add(new MenuItem("Linker"));
273301 linkerItem.addActionListener(this);
274
- templateItem = menu.add(new MenuItem("Template"));
275
- templateItem.addActionListener(this);
276302 attributeItem = menu.add(new MenuItem("Attribute"));
277303 attributeItem.addActionListener(this);
304
+ templateItem = menu.add(new MenuItem("Template"));
305
+ templateItem.addActionListener(this);
278306 pointflowItem = menu.add(new MenuItem("Point Flow"));
279307 pointflowItem.addActionListener(this);
280308 menu.add("-");
309
+ }
281310 resetTransformItem = menu.add(new MenuItem("Reset Transform"));
282311 resetTransformItem.addActionListener(this);
283312 resetCentroidItem = menu.add(new MenuItem("Reset Centroid"));
....@@ -294,8 +323,11 @@
294323 genNormalsCADItem.addActionListener(this);
295324 genNormalsMESHItem = menu.add(new MenuItem("Mesh Normals"));
296325 genNormalsMESHItem.addActionListener(this);
326
+ if (Globals.ADVANCED)
327
+ {
297328 genNormalsMINEItem = menu.add(new MenuItem("My Normals"));
298329 genNormalsMINEItem.addActionListener(this);
330
+ }
299331 stripifyItem = menu.add(new MenuItem("Stripify"));
300332 stripifyItem.addActionListener(this);
301333 unstripifyItem = menu.add(new MenuItem("Unstripify"));
....@@ -317,10 +349,14 @@
317349 reduce34MeshItem.addActionListener(this);
318350 increaseMeshItem = menu.add(new MenuItem("Increase mesh"));
319351 increaseMeshItem.addActionListener(this);
320
- smoothMeshItem = menu.add(new MenuItem("Smooth mesh"));
321
- smoothMeshItem.addActionListener(this);
322352 clipMeshItem = menu.add(new MenuItem("Clip mesh"));
323353 clipMeshItem.addActionListener(this);
354
+
355
+ if (Globals.ADVANCED)
356
+ {
357
+ smoothMeshItem = menu.add(new MenuItem("Smooth mesh"));
358
+ smoothMeshItem.addActionListener(this);
359
+ }
324360
325361 oe.menuBar.add(menu = new Menu("Attributes"));
326362 clearMaterialsItem = menu.add(new MenuItem("Clear Materials"));
....@@ -330,10 +366,13 @@
330366 liveleavesItem.addActionListener(this);
331367 unliveleavesItem = menu.add(new MenuItem("Unlive Leaves"));
332368 unliveleavesItem.addActionListener(this);
369
+ if (Globals.ADVANCED)
370
+ {
333371 supportleavesItem = menu.add(new MenuItem("Support Leaves"));
334372 supportleavesItem.addActionListener(this);
335373 unsupportleavesItem = menu.add(new MenuItem("Unsupport Leaves"));
336374 unsupportleavesItem.addActionListener(this);
375
+ }
337376 hideleavesItem = menu.add(new MenuItem("Hide Leaves"));
338377 hideleavesItem.addActionListener(this);
339378 showleavesItem = menu.add(new MenuItem("Show Leaves"));
....@@ -376,6 +415,8 @@
376415 sortbysizeItem.addActionListener(this);
377416 sortbynameItem = menu.add(new MenuItem("Sort by name"));
378417 sortbynameItem.addActionListener(this);
418
+ if (Globals.ADVANCED)
419
+ {
379420 menu.add("-");
380421 extractGeometriesItem = menu.add(new MenuItem("Link Geometry"));
381422 extractGeometriesItem.addActionListener(this);
....@@ -385,11 +426,11 @@
385426 shareGeometriesItem.addActionListener(this);
386427 mergeGeometriesItem = menu.add(new MenuItem("Merge Geometry"));
387428 mergeGeometriesItem.addActionListener(this);
429
+ }
388430
389431 oe.menuBar.add(menu = new Menu("Insert"));
390432 buildCreateMenu(menu);
391433
392
-
393434 oe.menuBar.add(menu = new Menu("Include"));
394435 importGFDItem = menu.add(new MenuItem("GrafreeD Object..."));
395436 importGFDItem.addActionListener(this);
....@@ -440,6 +481,10 @@
440481 liveCB.setToolTipText("Enabled animation");
441482 liveCB.addItemListener(this);
442483
484
+ oe.toolbarPanel.add(oneStepButton = new cButton("Step", !GrafreeD.NIMBUSLAF)); //, oe.aConstraints);
485
+ oneStepButton.setToolTipText("Animate one step forward");
486
+ oneStepButton.addActionListener(this);
487
+
443488 oe.toolbarPanel.add(fastCB = new cCheckBox("Fast", CameraPane.FAST)); //, constraints);
444489 fastCB.setToolTipText("Fast mode");
445490 fastCB.addItemListener(this);
....@@ -588,8 +633,18 @@
588633
589634 void AddOptions(cGridBag panel) //, GridBagConstraints constraints)
590635 {
636
+ panel.add(boxCB = new cCheckBox("Box", CameraPane.BOXMODE)); //, constraints);
637
+ boxCB.setToolTipText("Display bounding boxes");
638
+ boxCB.addItemListener(this);
639
+
640
+ panel.add(zoomBoxCB = new cCheckBox("Zoom", CameraPane.ZOOMBOXMODE)); //, constraints);
641
+ zoomBoxCB.setToolTipText("Display bounding boxes when moving the wheel");
642
+ zoomBoxCB.addItemListener(this);
643
+
644
+ if (Globals.ADVANCED)
645
+ {
591646 panel.add(supportCB = new cCheckBox("Support", CameraPane.SUPPORT)); //, constraints);
592
- supportCB.setToolTipText("Enabled rigging");
647
+ supportCB.setToolTipText("Enable rigging");
593648 supportCB.addItemListener(this);
594649
595650 // panel.add(localCB = new cCheckBox("Local", CameraPane.LOCALTRANSFORM), constraints);
....@@ -607,14 +662,6 @@
607662 slowCB.setToolTipText("Smooth interpolation");
608663 slowCB.addItemListener(this);
609664
610
- panel.add(boxCB = new cCheckBox("Box", CameraPane.BOXMODE)); //, constraints);
611
- boxCB.setToolTipText("Display bounding boxes");
612
- boxCB.addItemListener(this);
613
-
614
- panel.add(zoomBoxCB = new cCheckBox("Zoom", CameraPane.ZOOMBOXMODE)); //, constraints);
615
- zoomBoxCB.setToolTipText("Display bounding boxes when moving the wheel");
616
- zoomBoxCB.addItemListener(this);
617
-
618665 // constraints.gridy += 1;
619666 // panel.add(speakerMocapCB = new cCheckBox("Mocap", CameraPane.SPEAKERMOCAP), constraints);
620667 // speakerMocapCB.addItemListener(this);
....@@ -645,6 +692,8 @@
645692 panel.add(lookAtCB = new cCheckBox("Target", CameraPane.LOOKAT)); //, constraints);
646693 lookAtCB.setToolTipText("Look-at target");
647694 lookAtCB.addItemListener(this);
695
+
696
+ }
648697
649698 cGridBag fill = new cGridBag();
650699
....@@ -935,11 +984,11 @@
935984 {
936985 loadClipboard(true);
937986 objEditor.jTree.setSelectionPath(destinationPath);
938
- pasteInto(false);
987
+ pasteInto(false, false);
939988 } else {
940989 loadClipboard(false);
941990 objEditor.jTree.setSelectionPath(destinationPath);
942
- pasteInto(false); // true); // ???
991
+ pasteInto(false, false); // true); // ???
943992 }
944993 }
945994 public void dropActionChanged(DropTargetDragEvent dtde)
....@@ -1061,27 +1110,33 @@
10611110 kleinItem.addActionListener(this);
10621111 particleItem = menu.add(new MenuItem("Particle system"));
10631112 particleItem.addActionListener(this);
1113
+ if (Globals.ADVANCED)
1114
+ {
10641115 ragdollItem = menu.add(new MenuItem("Rag Walk"));
10651116 ragdollItem.addActionListener(this);
10661117 ragdoll2Item = menu.add(new MenuItem("Rag Fall"));
10671118 ragdoll2Item.addActionListener(this);
1119
+ }
10681120 menu.add("-");
1069
- meshItem = menu.add(new MenuItem("Mesh"));
1121
+ meshItem = menu.add(new MenuItem("Dynamic Mesh"));
10701122 meshItem.addActionListener(this);
10711123 // meshGroupItem = menu.add(new MenuItem("Mesh Group"));
10721124 // meshGroupItem.addActionListener(this);
1125
+ if (Globals.ADVANCED)
1126
+ {
10731127 springItem = menu.add(new MenuItem("Spring"));
10741128 springItem.addActionListener(this);
10751129 flagItem = menu.add(new MenuItem("Flag"));
10761130 flagItem.addActionListener(this);
1077
- bezierItem = menu.add(new MenuItem("Patch"));
1078
- bezierItem.addActionListener(this);
1079
- checkerItem = menu.add(new MenuItem("Checker"));
1080
- checkerItem.addActionListener(this);
10811131 blobItem = menu.add(new MenuItem("Blob"));
10821132 blobItem.addActionListener(this);
10831133 latheItem = menu.add(new MenuItem("Lathe"));
10841134 latheItem.addActionListener(this);
1135
+ }
1136
+ bezierItem = menu.add(new MenuItem("Bezier Patch"));
1137
+ bezierItem.addActionListener(this);
1138
+ overlayItem = menu.add(new MenuItem("Overlay"));
1139
+ overlayItem.addActionListener(this);
10851140 lightItem = menu.add(new MenuItem("Light"));
10861141 lightItem.addActionListener(this);
10871142 menu.add("-");
....@@ -1091,8 +1146,11 @@
10911146 loopItem.addActionListener(this);
10921147 doubleItem = menu.add(new MenuItem("Fork"));
10931148 doubleItem.addActionListener(this);
1149
+ if (Globals.ADVANCED)
1150
+ {
10941151 tripleItem = menu.add(new MenuItem("Trident"));
10951152 tripleItem.addActionListener(this);
1153
+ }
10961154 }
10971155
10981156 void buildToolsMenu(Menu menu)
....@@ -1106,10 +1164,8 @@
11061164 parseverticesItem.addActionListener(this);
11071165 textureFieldItem = menu.add(new MenuItem("Texture Field"));
11081166 textureFieldItem.addActionListener(this);
1109
- alignItem = menu.add(new MenuItem("Align"));
1167
+ alignItem = menu.add(new MenuItem("Align Object"));
11101168 alignItem.addActionListener(this);
1111
- mirrorItem = menu.add(new MenuItem("Mirror Poses"));
1112
- mirrorItem.addActionListener(this);
11131169 reduceMorphItem = menu.add(new MenuItem("Reduce Morphs"));
11141170 reduceMorphItem.addActionListener(this);
11151171 reduce34MorphItem = menu.add(new MenuItem("Reduce Morphs (34)"));
....@@ -1117,8 +1173,12 @@
11171173
11181174 menu.add(computeAOItem = new MenuItem("Compute AO"));
11191175 computeAOItem.addActionListener(this);
1120
- menu.add("-");
11211176
1177
+ if (Globals.ADVANCED)
1178
+ {
1179
+ mirrorItem = menu.add(new MenuItem("Mirror Poses"));
1180
+ mirrorItem.addActionListener(this);
1181
+ menu.add("-");
11221182 menu.add(memoryItem = new MenuItem("Memory Usage"));
11231183 memoryItem.addActionListener(this);
11241184 menu.add(analyzeItem = new MenuItem("Analyze"));
....@@ -1141,6 +1201,7 @@
11411201 menu.add("-");
11421202 menu.add(editScriptItem = new MenuItem("Edit Script..."));
11431203 editScriptItem.addActionListener(this);
1204
+ }
11441205 }
11451206
11461207 void ScreenFit()
....@@ -1642,7 +1703,7 @@
16421703 {
16431704 makeSomething(new BezierSurface());
16441705 } else
1645
- if (source == checkerItem)
1706
+ if (source == overlayItem)
16461707 {
16471708 /*
16481709 Object3D obj = new BezierSurface(5,8);
....@@ -1830,6 +1891,11 @@
18301891 {
18311892 DumpObject();
18321893 } else
1894
+ if (source == oneStepButton)
1895
+ {
1896
+ Globals.ONESTEP = true;
1897
+ cameraView.repaint();
1898
+ } else
18331899 if (source == screenfitButton)
18341900 {
18351901 //Reload(lastConverter, lastFilename, true);
....@@ -1902,13 +1968,17 @@
19021968 {
19031969 paste(false);
19041970 } else
1971
+ if (source == pasteIntoItem)
1972
+ {
1973
+ pasteInto(true, false);
1974
+ } else
19051975 if (source == pasteLinkItem)
19061976 {
1907
- pasteInto(false);
1977
+ pasteInto(false, false);
19081978 } else
19091979 if (source == pasteCloneItem)
19101980 {
1911
- pasteInto(true);
1981
+ pasteInto(true, true);
19121982 } else
19131983 if (source == pasteExpandItem)
19141984 {
....@@ -2110,11 +2180,11 @@
21102180 Globals.theRenderer.setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.WAIT_CURSOR));
21112181 for (int i=0; i<group.selection.size(); i++)
21122182 {
2113
- boolean random = CameraPane.RANDOM;
2114
- CameraPane.RANDOM = false; // parse all random nodes
2183
+ boolean random = CameraPane.SWITCH;
2184
+ CameraPane.SWITCH = false; // parse all random nodes
21152185 group.selection.get(i).linkVerticesThis(content);
21162186 // group.selection.get(i).setMasterThis(content); // should be identity
2117
- CameraPane.RANDOM = random;
2187
+ CameraPane.SWITCH = random;
21182188 }
21192189 Globals.theRenderer.setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.DEFAULT_CURSOR));
21202190 refreshContents();
....@@ -2124,20 +2194,20 @@
21242194 {
21252195 for (int i=0; i<group.selection.size(); i++)
21262196 {
2127
- boolean random = CameraPane.RANDOM;
2128
- CameraPane.RANDOM = false; // parse all random nodes
2197
+ boolean random = CameraPane.SWITCH;
2198
+ CameraPane.SWITCH = false; // parse all random nodes
21292199 group.selection.get(i).linkVerticesThis(null);
2130
- CameraPane.RANDOM = random;
2200
+ CameraPane.SWITCH = random;
21312201 }
21322202
21332203 refreshContents();
21342204 } else
21352205 if (source == relinkverticesItem)
21362206 {
2137
- boolean random = CameraPane.RANDOM;
2138
- CameraPane.RANDOM = false; // parse all random nodes
2207
+ boolean random = CameraPane.SWITCH;
2208
+ CameraPane.SWITCH = false; // parse all random nodes
21392209 group.selection.RelinkToSupport();
2140
- CameraPane.RANDOM = random;
2210
+ CameraPane.SWITCH = random;
21412211
21422212 refreshContents();
21432213 } else
....@@ -3611,11 +3681,11 @@
36113681
36123682 SwitchNode sn = new SwitchNode(poses, Object3D.GEOMETRY);
36133683
3614
- boolean random = CameraPane.RANDOM;
3615
- CameraPane.RANDOM = false; // parse all random nodes
3684
+ boolean random = CameraPane.SWITCH;
3685
+ CameraPane.SWITCH = false; // parse all random nodes
36163686 lowres.linkVerticesThis(null);
36173687 lowres.linkVerticesThis(sn);
3618
- CameraPane.RANDOM = random;
3688
+ CameraPane.SWITCH = random;
36193689
36203690 System.err.flush();
36213691
....@@ -4373,7 +4443,7 @@
43734443 refreshContents();
43744444 }
43754445
4376
- void pasteInto(boolean copyit)
4446
+ void pasteInto(boolean copyit, boolean clone)
43774447 {
43784448 // if (GrafreeD.clipboard == null)
43794449 // return;
....@@ -4402,7 +4472,14 @@
44024472 if (copyit)
44034473 {
44044474 // paste(false);
4405
- CloneClipboard(false); // sept 2014
4475
+ if (clone)
4476
+ {
4477
+ CloneClipboard(false); // sept 2014
4478
+ }
4479
+ else
4480
+ {
4481
+ paste(false);
4482
+ }
44064483 }
44074484 else
44084485 {
....@@ -4950,6 +5027,8 @@
49505027 cButton clearpanelButton;
49515028 cButton unselectButton;
49525029
5030
+ cButton oneStepButton;
5031
+
49535032 cButton screenfitButton;
49545033 cButton screenfitpointButton;
49555034 cButton snapobjectButton;
....@@ -5004,6 +5083,7 @@
50045083 private MenuItem mergeGeometriesItem;
50055084 private MenuItem copyItem;
50065085 private MenuItem pasteItem;
5086
+ private MenuItem pasteIntoItem;
50075087 private MenuItem pasteLinkItem;
50085088 private MenuItem pasteCloneItem;
50095089 private MenuItem pasteExpandItem;
....@@ -5101,7 +5181,7 @@
51015181 private MenuItem blobItem;
51025182 private MenuItem latheItem;
51035183 private MenuItem bezierItem;
5104
- private MenuItem checkerItem;
5184
+ private MenuItem overlayItem;
51055185 private MenuItem meshItem;
51065186 // private MenuItem meshGroupItem;
51075187 private MenuItem springItem;