Normand Briere
2019-07-27 1af7d3700724834e40ad8636bc9a56cdc3b19b15
Composite.java
....@@ -160,36 +160,37 @@
160160 // //Touch();
161161 // }
162162
163
- public void clear()
164
- {
165
- if (blockloop)
166
- {
167
- //blockloop = false;
168
- return;
169
- }
170
-
171
- blockloop = true;
172
- //Applet3D.tracein("Clear", this);
173
- for (int i = 0; i < Children().size(); i++)
174
- {
175
- Object3D obj = (Object3D) Children().get(i); // reserve(i);
176
-
177
- //if (!obj.ReadOnly()) // Object3D Serial...
178
- if (!(obj instanceof Composite) || !((Composite) obj).ReadOnly())
179
- {
180
- obj.clear();
181
- //Children().release(i);
182
- Children().remove(i);
183
- --i;
184
- } else
185
- {
186
- //Children().release(i);
187
- }
188
- }
189
- //Applet3D.traceout("Clear", this);
190
-
191
- blockloop = false;
192
- }
163
+ // JUNE 2019??? That cannot work...
164
+// public void clear()
165
+// {
166
+// if (blockloop)
167
+// {
168
+// //blockloop = false;
169
+// return;
170
+// }
171
+//
172
+// blockloop = true;
173
+// //Applet3D.tracein("Clear", this);
174
+// for (int i = 0; i < Children().size(); i++)
175
+// {
176
+// Object3D obj = (Object3D) Children().get(i); // reserve(i);
177
+//
178
+// //if (!obj.ReadOnly()) // Object3D Serial...
179
+// if (!(obj instanceof Composite) || !((Composite) obj).ReadOnly())
180
+// {
181
+// obj.clear();
182
+// //Children().release(i);
183
+// Children().remove(i);
184
+// --i;
185
+// } else
186
+// {
187
+// //Children().release(i);
188
+// }
189
+// }
190
+// //Applet3D.traceout("Clear", this);
191
+//
192
+// blockloop = false;
193
+// }
193194
194195 boolean ReadOnly()
195196 {
....@@ -205,6 +206,7 @@
205206
206207 boolean HasLoops()
207208 {
209
+ new Exception().printStackTrace();
208210 System.exit(0);
209211 if (blockloop)
210212 {
....@@ -348,6 +350,7 @@
348350
349351 void getBounds0(cVector minima, cVector maxima, boolean xform)
350352 {
353
+ new Exception().printStackTrace();
351354 System.exit(0);
352355 minima.x = minima.y = minima.z = 1E10;
353356 maxima.x = maxima.y = maxima.z = -1E10;
....@@ -787,6 +790,8 @@
787790
788791 void draw(ClickInfo info, int level, boolean select)
789792 {
793
+ new Exception().printStackTrace();
794
+
790795 ClickInfo newInfo = new ClickInfo();
791796 newInfo.flags = info.flags;
792797 newInfo.bounds = info.bounds;
....@@ -822,7 +827,7 @@
822827
823828 }
824829
825
- void draw(CameraPane display, Object3D /*Composite*/ root, boolean selected, boolean blocked)
830
+ void draw(iCameraPane display, Object3D /*Composite*/ root, boolean selected, boolean blocked)
826831 {
827832 if (this instanceof BezierPatch)
828833 {
....@@ -837,7 +842,7 @@
837842 }
838843
839844 if ((//display.drawMode == CameraPane.SHADOW ||
840
- display.drawMode == CameraPane.SELECTION || CameraPane.DEBUG_SELECTION) &&
845
+ display.DrawMode() == CameraPane.SELECTION || display.IsDebugSelection()) &&
841846 //HasTransparency())
842847 // SERIAL PATCH
843848 // if (viewCode == -1)
....@@ -855,7 +860,7 @@
855860
856861 cTexture tex = null;
857862
858
- boolean selectmode = display.drawMode == display.SELECTION || CameraPane.DEBUG_SELECTION;
863
+ boolean selectmode = display.DrawMode() == display.SELECTION || display.IsDebugSelection();
859864
860865 if (//display.drawMode != display.SHADOW &&
861866 !selectmode // display.drawMode != display.SELECTION
....@@ -864,8 +869,29 @@
864869 tex = GetTextures();
865870 }
866871
867
- display.BindTextures(tex, texres);
872
+ boolean failedPigment = false;
873
+ boolean failedBump = false;
868874
875
+ try
876
+ {
877
+ display.BindPigmentTexture(tex, texres);
878
+ }
879
+ catch (Exception e)
880
+ {
881
+ System.err.println("FAILED: " + this);
882
+ failedPigment = true;
883
+ }
884
+
885
+ try
886
+ {
887
+ display.BindBumpTexture(tex, texres);
888
+ }
889
+ catch (Exception e)
890
+ {
891
+ //System.err.println("FAILED: " + this);
892
+ failedBump = true;
893
+ }
894
+
869895 if (//true) // new NORMAND
870896 touched || softtouched)
871897 {
....@@ -927,7 +953,11 @@
927953 }
928954 }
929955
930
- display.ReleaseTextures(tex);
956
+ if (!failedBump)
957
+ display.ReleaseBumpTexture(tex);
958
+
959
+ if (!failedPigment)
960
+ display.ReleasePigmentTexture(tex);
931961 }
932962
933963 void Reset0()
....@@ -994,7 +1024,7 @@
9941024 // }
9951025 // }
9961026
997
- void drawSelfOld(CameraPane display, Object3D /*Composite*/ root, boolean selected)
1027
+ void drawSelfOld(iCameraPane display, Object3D /*Composite*/ root, boolean selected)
9981028 {
9991029 // if (count <= 0) // || display.IsFreezed())
10001030 // {