|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--javax.media.j3d.SceneGraphObject | +--javax.media.j3d.Node | +--javax.media.j3d.Leaf | +--javax.media.j3d.Behavior | +--javax.media.j3d.Interpolator | +--javax.media.j3d.SwitchValueInterpolator
SwitchValueInterpolator behavior. This class defines a behavior that modifies the selected child of the target switch node by linearly interpolating between a pair of specified child index values (using the value generated by the specified Alpha object).
Fields inherited from class javax.media.j3d.Interpolator |
defaultWakeupCriterion |
Fields inherited from class javax.media.j3d.Node |
ALLOW_AUTO_COMPUTE_BOUNDS_READ,
ALLOW_AUTO_COMPUTE_BOUNDS_WRITE,
ALLOW_BOUNDS_READ,
ALLOW_BOUNDS_WRITE,
ALLOW_COLLIDABLE_READ,
ALLOW_COLLIDABLE_WRITE,
ALLOW_LOCAL_TO_VWORLD_READ,
ALLOW_PICK,
ALLOW_PICKABLE_READ,
ALLOW_PICKABLE_WRITE,
ENABLE_COLLISION_REPORTING,
ENABLE_PICK_REPORTING |
Constructor Summary | |
SwitchValueInterpolator(Alpha alpha,
Switch target)
Constructs a SwitchValueInterpolator behavior that varies its target Switch node's child index between 0 and n-1, where n is the number of children in the target Switch node. |
|
SwitchValueInterpolator(Alpha alpha,
Switch target,
int firstChildIndex,
int lastChildIndex)
Constructs a SwitchValueInterpolator behavior that varies its target Switch node's child index between the two values provided. |
Method Summary | |
Node |
cloneNode(boolean forceDuplicate)
Used to create a new instance of the node. |
void |
duplicateNode(Node originalNode,
boolean forceDuplicate)
Copies all node information from originalNode into
the current node. |
int |
getFirstChildIndex()
This method retrieves this interpolator's firstChildIndex. |
int |
getLastChildIndex()
This method retrieves this interpolator's lastSwitchIndex. |
Switch |
getTarget()
This method retrieves this interpolator's target Switch node reference. |
void |
processStimulus(java.util.Enumeration criteria)
This method is invoked by the behavior scheduler every frame. |
void |
setFirstChildIndex(int firstIndex)
This method sets the firstChildIndex for this interpolator. |
void |
setLastChildIndex(int lastIndex)
This method sets the lastChildIndex for this interpolator. |
void |
setTarget(Switch target)
This method sets the target for this interpolator. |
void |
updateNodeReferences(NodeReferenceTable referenceTable)
Callback used to allow a node to check if any nodes referenced by that node have been duplicated via a call to cloneTree . |
Methods inherited from class javax.media.j3d.Interpolator |
getAlpha,
initialize,
setAlpha |
Methods inherited from class javax.media.j3d.Behavior |
getEnable,
getSchedulingBoundingLeaf,
getSchedulingBounds,
getView,
postId,
setEnable,
setSchedulingBoundingLeaf,
setSchedulingBounds,
wakeupOn |
Methods inherited from class javax.media.j3d.Node |
cloneTree,
cloneTree,
cloneTree,
getBounds,
getBoundsAutoCompute,
getCollidable,
getLocalToVworld,
getLocalToVworld,
getParent,
getPickable,
setBounds,
setBoundsAutoCompute,
setCollidable,
setPickable |
Methods inherited from class javax.media.j3d.SceneGraphObject |
clearCapability,
duplicateSceneGraphObject,
getCapability,
getUserData,
isCompiled,
isLive,
setCapability,
setUserData |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Constructor Detail |
public SwitchValueInterpolator(Alpha alpha, Switch target)
alpha
- the alpha object for this interpolatortarget
- the Switch node affected by this interpolatorpublic SwitchValueInterpolator(Alpha alpha, Switch target, int firstChildIndex, int lastChildIndex)
alpha
- the alpha object for this interpolatortarget
- the Switch node affected by this interpolatorfirstChildIndex
- the index of first child in the Switch node to
selectlastChildIndex
- the index of last child in the Switch node to
selectMethod Detail |
public void setFirstChildIndex(int firstIndex)
firstIndex
- the new index for the first childpublic int getFirstChildIndex()
public void setLastChildIndex(int lastIndex)
lastIndex
- the new index for the last childpublic int getLastChildIndex()
public void setTarget(Switch target)
target
- the target Switch nodepublic Switch getTarget()
public void processStimulus(java.util.Enumeration criteria)
criteria
- an enumeration of the criteria that triggered
this stimuluspublic Node cloneNode(boolean forceDuplicate)
cloneTree
to duplicate the current node.forceDuplicate
- when set to true
, causes the
duplicateOnCloneTree
flag to be ignored. When
false
, the value of each node's
duplicateOnCloneTree
variable determines whether
NodeComponent data is duplicated or copied.Node.cloneTree()
,
Node.cloneNode(boolean)
,
Node.duplicateNode(javax.media.j3d.Node, boolean)
,
NodeComponent.setDuplicateOnCloneTree(boolean)
public void duplicateNode(Node originalNode, boolean forceDuplicate)
originalNode
into
the current node. This method is called from the
cloneNode
method which is, in turn, called by the
cloneTree
method.
For any NodeComponent objects
contained by the object being duplicated, each NodeComponent
object's duplicateOnCloneTree
value is used to determine
whether the NodeComponent should be duplicated in the new node
or if just a reference to the current node should be placed in the
new node. This flag can be overridden by setting the
forceDuplicate
parameter in the cloneTree
method to true
.
originalNode
- the original node to duplicate.forceDuplicate
- when set to true
, causes the
duplicateOnCloneTree
flag to be ignored. When
false
, the value of each node's
duplicateOnCloneTree
variable determines whether
NodeComponent data is duplicated or copied.Node.cloneTree()
,
Node.cloneNode(boolean)
,
NodeComponent.setDuplicateOnCloneTree(boolean)
public void updateNodeReferences(NodeReferenceTable referenceTable)
cloneTree
.
This method is called by cloneTree
after all nodes in
the sub-graph have been duplicated. The cloned Leaf node's method
will be called and the Leaf node can then look up any node references
by using the getNewNodeReference
method found in the
NodeReferenceTable
object. If a match is found, a
reference to the corresponding Node in the newly cloned sub-graph
is returned. If no corresponding reference is found, either a
DanglingReferenceException is thrown or a reference to the original
node is returned depending on the value of the
allowDanglingReferences
parameter passed in the
cloneTree
call.referenceTable
- a NodeReferenceTableObject that contains the
getNewNodeReference
method needed to search for
new object instances.NodeReferenceTable
,
Node.cloneTree()
,
DanglingReferenceException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |