aboutsummaryrefslogtreecommitdiffstats
path: root/src/classes
diff options
context:
space:
mode:
authorHarvey Harrison <[email protected]>2012-06-26 23:25:09 -0700
committerHarvey Harrison <[email protected]>2012-06-26 23:25:09 -0700
commit7fd13b4c009ae51f21a538d665db84c042d0ced9 (patch)
tree1cd99fea4b3aa8e6c76c93028727f7c922563715 /src/classes
parent92f2e99d9c3ea94019b0ed8be0dfc59715cb2816 (diff)
j3dcore: more code cleanup related to ModelClips
Signed-off-by: Harvey Harrison <[email protected]>
Diffstat (limited to 'src/classes')
-rw-r--r--src/classes/share/javax/media/j3d/RenderingEnvironmentStructure.java74
1 files changed, 31 insertions, 43 deletions
diff --git a/src/classes/share/javax/media/j3d/RenderingEnvironmentStructure.java b/src/classes/share/javax/media/j3d/RenderingEnvironmentStructure.java
index 0d0975a..bc164a3 100644
--- a/src/classes/share/javax/media/j3d/RenderingEnvironmentStructure.java
+++ b/src/classes/share/javax/media/j3d/RenderingEnvironmentStructure.java
@@ -862,55 +862,43 @@ FogRetained getInfluencingFog(RenderAtom ra, View view) {
return numFogs;
}
- ModelClipRetained getInfluencingModelClip(RenderAtom ra, View view) {
- ModelClipRetained modelClip = null;
- int j, nModelClips;
- Bounds closestBounds;
- ArrayList globalModelClips;
-
+ModelClipRetained getInfluencingModelClip(RenderAtom ra, View view) {
+ if (ra.geometryAtom.source.inBackgroundGroup)
+ return null;
-
- if (ra.geometryAtom.source.inBackgroundGroup) {
- return null;
- }
// Need to lock lockObj, since on a multi-processor
// system with 2 views on a single universe, there might
// be councurrent access
- synchronized(lockObj) {
- Bounds bounds = ra.localeVwcBounds;
- nModelClips = 0;
- if (intersectedBounds.length < numberOfModelClips)
- intersectedBounds = new Bounds[numberOfModelClips];
-
- if ((globalModelClips = (ArrayList)viewScopedModelClips.get(view)) != null) {
- nModelClips = processModelClips(globalModelClips, ra, nModelClips);
- }
-
- // now process the common clips
- nModelClips = processModelClips(nonViewScopedModelClips, ra, nModelClips);
-
-
-
-
-
- modelClip = null;
- if (nModelClips == 1)
- modelClip = intersectedModelClips[0];
- else if (nModelClips > 1) {
- closestBounds = bounds.closestIntersection(intersectedBounds);
- for (j= 0; j < nModelClips; j++) {
- if (intersectedBounds[j] == closestBounds) {
- modelClip = intersectedModelClips[j];
- break;
- }
+ synchronized (lockObj) {
+ Bounds bounds = ra.localeVwcBounds;
+ int nModelClips = 0;
+ if (intersectedBounds.length < numberOfModelClips)
+ intersectedBounds = new Bounds[numberOfModelClips];
+
+ ArrayList<ModelClipRetained> globalModelClips = viewScopedModelClips.get(view);
+ if (globalModelClips != null)
+ nModelClips = processModelClips(globalModelClips, ra, nModelClips);
+
+ // now process the common clips
+ nModelClips = processModelClips(nonViewScopedModelClips, ra, nModelClips);
+
+ ModelClipRetained modelClip = null;
+ if (nModelClips == 1)
+ modelClip = intersectedModelClips[0];
+ else if (nModelClips > 1) {
+ Bounds closestBounds = bounds.closestIntersection(intersectedBounds);
+ for (int j = 0; j < nModelClips; j++) {
+ if (intersectedBounds[j] == closestBounds) {
+ modelClip = intersectedModelClips[j];
+ break;
+ }
+ }
}
- }
- return (modelClip);
+ return modelClip;
}
+}
- }
-
- int processModelClips(ArrayList globalModelClips, RenderAtom ra, int nModelClips) {
+int processModelClips(ArrayList<ModelClipRetained> globalModelClips, RenderAtom ra, int nModelClips) {
int size = globalModelClips.size();
int i, k, n;
ModelClipRetained modelClip;
@@ -919,7 +907,7 @@ FogRetained getInfluencingFog(RenderAtom ra, View view) {
if (size > 0) {
for (i = 0; i < size; i++) {
- modelClip = (ModelClipRetained) globalModelClips.get(i);
+ modelClip = globalModelClips.get(i);
if (modelClip.enableFlag == true &&
modelClip.region != null && modelClip.switchState.currentSwitchOn) {
if (modelClip.region.intersect(bounds) == true) {