|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavax.media.j3d.IndexedObject
javax.media.j3d.SceneGraphObjectRetained
javax.media.j3d.NodeRetained
javax.media.j3d.LeafRetained
javax.media.j3d.Shape3DRetained
class Shape3DRetained
A shape leaf node consisting of geometry and appearance properties.
Field Summary | |
---|---|
(package private) AlternateAppearanceRetained[] |
altApps
|
(package private) AppearanceRetained |
appearance
The appearance component of the shape node. |
(package private) static int |
APPEARANCE_CHANGED
|
(package private) static int |
APPEARANCEOVERRIDE_CHANGED
|
(package private) boolean |
appearanceOverrideEnable
|
(package private) Bounds |
bounds
|
(package private) static int |
BOUNDS_CHANGED
|
(package private) BranchGroupRetained[] |
branchGroupPath
Reference to the BranchGroup path of this mirror shape This is used for picking and GeometryStructure only. |
(package private) int |
changedFrequent
|
(package private) int |
closestSwitchIndex
|
(package private) SwitchRetained |
closestSwitchParent
|
(package private) static int |
COLLISION_CHANGED
|
(package private) Bounds |
collisionBound
|
(package private) Bounds |
collisionVwcBound
|
(package private) FogRetained[] |
fogs
|
private GeometryAtom |
geomAtom
A 2D storage of all geometry atoms associated with this shape node. |
(package private) static int |
GEOMETRY_CHANGED
|
(package private) java.util.ArrayList |
geometryList
The arraylist of geometry component of the shape node. |
(package private) boolean |
inImmCtx
|
(package private) boolean |
isCollidable
|
(package private) int |
isDirty
|
(package private) boolean |
isPickable
|
(package private) HashKey |
key
The hashkey for this Shape3DRetained mirror object |
(package private) static int |
LAST_DEFINED_BIT
|
(package private) LightRetained[] |
lights
|
(package private) java.util.ArrayList |
mirrorShape3D
The mirror Shape3DRetained nodes for this object. |
private MRSWLock |
mirrorShape3DLock
To sychronize access of the mirrorShape3D's geomAtomArray*. |
(package private) ModelClipRetained[] |
modelClips
|
(package private) int |
numAltApps
|
(package private) int |
numfogs
|
(package private) int |
numlights
|
(package private) int |
numModelClips
|
(package private) OrderedPath |
orderedPath
|
(package private) AppearanceRetained |
otherAppearance
|
(package private) NodeRetained |
sourceNode
This field is used for mirror Shape3D nodes accessing their original nodes. |
(package private) static int |
targetThreads
|
(package private) java.util.ArrayList |
viewList
|
(package private) boolean |
visible
|
(package private) BoundingBox |
vwcBounds
|
Fields inherited from class javax.media.j3d.LeafRetained |
---|
boundsDirty, switchState |
Fields inherited from class javax.media.j3d.SceneGraphObjectRetained |
---|
DONT_MERGE, inBackgroundGroup, inSetLive, MERGE, MERGE_DONE, mergeFlag, onUpdateList, source |
Fields inherited from class javax.media.j3d.IndexedObject |
---|
listIdx |
Constructor Summary | |
---|---|
Shape3DRetained()
|
Method Summary | |
---|---|
(package private) void |
addAltApp(AlternateAppearanceRetained aApp)
|
(package private) void |
addFog(FogRetained fog)
|
(package private) void |
addGeometry(Geometry geometry)
Appends the specified geometry component to this Shape3D node's list of geometry components. |
(package private) void |
addLight(LightRetained light)
|
(package private) void |
addModelClip(ModelClipRetained modelClip)
|
(package private) boolean |
allowIntersect()
|
(package private) void |
checkEquivalenceClass(Geometry geometry,
int index)
|
(package private) void |
clearLive(SetLiveState s)
assign a name to this node when it is made live. |
(package private) void |
clearMirrorShape()
This clears all references in a mirror shape |
(package private) void |
compile(CompileState compState)
This is the default compile() method, which just marks the sgo as compiled. |
(package private) void |
computeCombineBounds(Bounds bounds)
ONLY needed for SHAPE, MORPH, and LINK node type. |
(package private) void |
doSetLive(SetLiveState s)
Makes the internal node live. |
(package private) java.util.Enumeration |
getAllGeometries(int id)
Returns an enumeration of this Shape3D node's list of geometry components. |
(package private) Appearance |
getAppearance()
Retrieves the shape node's appearance component. |
(package private) boolean |
getAppearanceOverrideEnable()
|
(package private) Bounds |
getBounds()
Gets the bounding object of a node. |
(package private) Bounds |
getCollisionBounds(int id)
Gets the collision bounds of a node. |
(package private) void |
getCombineBounds(BoundingBox bounds)
|
(package private) Bounds |
getEffectiveBounds()
Gets the bounding object of a node. |
(package private) static GeometryAtom |
getGeomAtom(Shape3DRetained shape)
|
(package private) static GeometryAtom[] |
getGeomAtomsArray(java.util.ArrayList userList)
Return an array of geometry atoms belongs to userList. |
(package private) static java.util.ArrayList |
getGeomAtomsList(java.util.ArrayList userList,
java.util.ArrayList univList)
Return a list of geometry atoms belongs to userList and places a list of universe found in userList in univList. |
(package private) Geometry |
getGeometry(int index,
int id)
Retrieves the geometry component of this Shape3D node. |
(package private) boolean |
getInImmCtx()
This gets the immedate mode context flag |
(package private) Bounds |
getLocalBounds(Bounds bounds)
|
(package private) void |
getMirrorObjects(java.util.ArrayList list,
HashKey k)
|
(package private) Shape3DRetained |
getMirrorShape(HashKey key)
|
(package private) Shape3DRetained |
getMirrorShape(SceneGraphPath path)
|
(package private) int |
getPrimaryViewIdx()
|
(package private) void |
handleFrequencyChange(int bit)
|
(package private) int |
indexOfGeometry(Geometry geometry)
|
(package private) void |
initializeGAtom(Shape3DRetained ms)
|
(package private) void |
initMirrorShape3D(SetLiveState s,
MorphRetained morph,
int index)
This initialize the mirror shape to reflect the state of the real Morph. |
private void |
initMirrorShape3D(SetLiveState s,
Shape3DRetained ms,
int index)
This updates the mirror shape to reflect the state of the real shape3d. |
(package private) void |
insertGeometry(Geometry geometry,
int index)
Inserts the specified geometry component into this Shape3D node's list of geometry components at the specified index. |
(package private) boolean |
intersect(PickInfo pickInfo,
PickShape pickShape,
int flags)
|
(package private) boolean |
intersect(SceneGraphPath path,
PickShape pickShape,
double[] dist)
Check if the geometry component of this shape node under path intersects with the pickShape. |
(package private) boolean |
intersectGeometryList(Shape3DRetained otherShape)
|
(package private) boolean |
intersectGeometryList(Transform3D thisLocalToVworld,
Bounds targetBound)
|
(package private) boolean |
isAlphaEditable(GeometryRetained geo)
|
(package private) boolean |
isAlphaFrequentlyEditable(GeometryRetained geo)
|
(package private) boolean |
isEquivalent(Shape3DRetained shape)
|
(package private) boolean |
isStatic()
true if component can't be read or written after compile or setlive() |
(package private) void |
merge(CompileState compState)
|
(package private) int |
numGeometries(int id)
Returns the number of geometry components in this Shape3D node's list of geometry components. |
(package private) void |
removeAllGeometries()
|
(package private) void |
removeAltApp(AlternateAppearanceRetained aApp)
|
(package private) void |
removeFog(FogRetained fog)
|
(package private) void |
removeGeometry(Geometry geometry)
|
(package private) void |
removeGeometry(int index)
Removes the geometry component at the specified index from this Shape3D node's list of geometry components. |
(package private) void |
removeLight(LightRetained light)
|
(package private) void |
removeModelClip(ModelClipRetained modelClip)
|
(package private) void |
searchGeometryAtoms(UnorderList list)
|
private void |
sendDataChangedMessage(GeometryRetained newGeom)
|
(package private) void |
setAppearance(Appearance newAppearance)
Sets the appearance component of this Shape3D node. |
(package private) void |
setAppearanceOverrideEnable(boolean flag)
|
(package private) void |
setBounds(Bounds bounds)
Sets the geometric bounds of a node. |
(package private) void |
setBoundsAutoCompute(boolean autoCompute)
Sets the automatic calcuation of geometric bounds of a node. |
(package private) void |
setCollisionBounds(Bounds bounds)
Sets the collision bounds of a node. |
(package private) static void |
setGeomAtom(Shape3DRetained shape,
GeometryAtom ga)
|
(package private) void |
setGeometry(Geometry geometry,
int index)
Replaces the geometry component at the specified index in this Shape3D node's list of geometry components with the specified geometry component. |
(package private) void |
setInImmCtx(boolean inCtx)
This sets the immedate mode context flag |
(package private) void |
setLive(SetLiveState s)
assign a name to this node when it is made live. |
(package private) void |
setMorphGeometry(Geometry geometry,
java.util.ArrayList mirrorShapes)
|
(package private) boolean |
shapeIsMergeable(CompileState compState)
|
(package private) boolean |
staticXformCanBeApplied()
|
(package private) void |
updateBounds()
|
(package private) void |
updateCollidable(HashKey[] keys,
boolean[] collide)
|
(package private) void |
updateImmediateMirrorObject(java.lang.Object[] objs)
|
(package private) void |
updatePickable(HashKey[] keys,
boolean[] pick)
|
(package private) boolean |
willRemainOpaque(int geoType)
|
Methods inherited from class javax.media.j3d.LeafRetained |
---|
clone, updateBoundingLeaf, updateMirrorObject, updateTransformChange |
Methods inherited from class javax.media.j3d.SceneGraphObjectRetained |
---|
clearLive, clearLive, clone, doSetLive, getSource, isInSetLive, markAsLive, setCompiled, setLive, setSource, traverse |
Methods inherited from class javax.media.j3d.IndexedObject |
---|
getIdxUsed, incIdxUsed |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
static final int GEOMETRY_CHANGED
static final int APPEARANCE_CHANGED
static final int COLLISION_CHANGED
static final int BOUNDS_CHANGED
static final int APPEARANCEOVERRIDE_CHANGED
static final int LAST_DEFINED_BIT
static final int targetThreads
AppearanceRetained appearance
java.util.ArrayList geometryList
private GeometryAtom geomAtom
private MRSWLock mirrorShape3DLock
java.util.ArrayList mirrorShape3D
NodeRetained sourceNode
HashKey key
boolean inImmCtx
int isDirty
LightRetained[] lights
int numlights
FogRetained[] fogs
int numfogs
ModelClipRetained[] modelClips
int numModelClips
AlternateAppearanceRetained[] altApps
int numAltApps
BranchGroupRetained[] branchGroupPath
boolean isPickable
boolean isCollidable
SwitchRetained closestSwitchParent
int closestSwitchIndex
boolean visible
boolean appearanceOverrideEnable
AppearanceRetained otherAppearance
Bounds bounds
BoundingBox vwcBounds
Bounds collisionBound
Bounds collisionVwcBound
OrderedPath orderedPath
java.util.ArrayList viewList
int changedFrequent
Constructor Detail |
---|
Shape3DRetained()
Method Detail |
---|
void setCollisionBounds(Bounds bounds)
bounds
- the bounding object for the nodeBounds getLocalBounds(Bounds bounds)
getLocalBounds
in class NodeRetained
void setBounds(Bounds bounds)
setBounds
in class NodeRetained
bounds
- the bounding object for the nodeBounds getCollisionBounds(int id)
void addGeometry(Geometry geometry)
geometry
- the geometry component to be appended.
java.lang.IllegalArgumentException
- if the new geometry
component is not of of the same equivalence class as the
existing geometry components.void setGeometry(Geometry geometry, int index)
geometry
- the geometry component to be stored at the
specified index.index
- the index of the geometry component to be replaced.
java.lang.IllegalArgumentException
- if the new geometry
component is not of of the same equivalence class as the
existing geometry components.void insertGeometry(Geometry geometry, int index)
geometry
- the geometry component to be inserted at the
specified index.index
- the index at which the geometry component is inserted.void removeGeometry(int index)
index
- the index of the geometry component to be removed.Geometry getGeometry(int index, int id)
java.util.Enumeration getAllGeometries(int id)
int numGeometries(int id)
void setAppearance(Appearance newAppearance)
appearance
- the new apearance component for this shape nodeAppearance getAppearance()
void setAppearanceOverrideEnable(boolean flag)
boolean getAppearanceOverrideEnable()
boolean intersect(PickInfo pickInfo, PickShape pickShape, int flags)
boolean intersect(SceneGraphPath path, PickShape pickShape, double[] dist)
java.lang.IllegalArgumentException
- if path
is
invalid.void setInImmCtx(boolean inCtx)
boolean getInImmCtx()
private void initMirrorShape3D(SetLiveState s, Shape3DRetained ms, int index)
void updateImmediateMirrorObject(java.lang.Object[] objs)
Bounds getBounds()
getBounds
in class NodeRetained
Bounds getEffectiveBounds()
NodeRetained
getEffectiveBounds
in class NodeRetained
void computeCombineBounds(Bounds bounds)
computeCombineBounds
in class NodeRetained
void setLive(SetLiveState s)
setLive
in class NodeRetained
void doSetLive(SetLiveState s)
SceneGraphObjectRetained
doSetLive
in class NodeRetained
void clearMirrorShape()
void clearLive(SetLiveState s)
clearLive
in class NodeRetained
boolean isStatic()
SceneGraphObjectRetained
isStatic
in class NodeRetained
boolean staticXformCanBeApplied()
void compile(CompileState compState)
SceneGraphObjectRetained
compile
in class SceneGraphObjectRetained
void merge(CompileState compState)
merge
in class NodeRetained
boolean shapeIsMergeable(CompileState compState)
void getMirrorObjects(java.util.ArrayList list, HashKey k)
getMirrorObjects
in class LeafRetained
void addLight(LightRetained light)
void removeLight(LightRetained light)
void addFog(FogRetained fog)
void removeFog(FogRetained fog)
void addModelClip(ModelClipRetained modelClip)
void removeModelClip(ModelClipRetained modelClip)
void addAltApp(AlternateAppearanceRetained aApp)
void removeAltApp(AlternateAppearanceRetained aApp)
void updatePickable(HashKey[] keys, boolean[] pick)
updatePickable
in class NodeRetained
void updateCollidable(HashKey[] keys, boolean[] collide)
updateCollidable
in class NodeRetained
private void sendDataChangedMessage(GeometryRetained newGeom)
Shape3DRetained getMirrorShape(SceneGraphPath path)
Shape3DRetained getMirrorShape(HashKey key)
void setBoundsAutoCompute(boolean autoCompute)
NodeRetained
setBoundsAutoCompute
in class NodeRetained
autoCompute
- is a boolean value indicating if automatic calcuation
of boundsvoid updateBounds()
updateBounds
in class LeafRetained
boolean allowIntersect()
boolean intersectGeometryList(Shape3DRetained otherShape)
boolean intersectGeometryList(Transform3D thisLocalToVworld, Bounds targetBound)
void initMirrorShape3D(SetLiveState s, MorphRetained morph, int index)
void setMorphGeometry(Geometry geometry, java.util.ArrayList mirrorShapes)
static final GeometryAtom[] getGeomAtomsArray(java.util.ArrayList userList)
static final java.util.ArrayList getGeomAtomsList(java.util.ArrayList userList, java.util.ArrayList univList)
static final GeometryAtom getGeomAtom(Shape3DRetained shape)
static final void setGeomAtom(Shape3DRetained shape, GeometryAtom ga)
boolean isAlphaEditable(GeometryRetained geo)
void getCombineBounds(BoundingBox bounds)
boolean isEquivalent(Shape3DRetained shape)
void initializeGAtom(Shape3DRetained ms)
void checkEquivalenceClass(Geometry geometry, int index)
int indexOfGeometry(Geometry geometry)
void removeGeometry(Geometry geometry)
void removeAllGeometries()
boolean willRemainOpaque(int geoType)
void handleFrequencyChange(int bit)
handleFrequencyChange
in class SceneGraphObjectRetained
boolean isAlphaFrequentlyEditable(GeometryRetained geo)
int getPrimaryViewIdx()
void searchGeometryAtoms(UnorderList list)
searchGeometryAtoms
in class NodeRetained
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |