|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavax.media.j3d.SceneGraphObject
javax.media.j3d.Node
javax.media.j3d.Leaf
javax.media.j3d.Behavior
javax.media.j3d.Interpolator
javax.media.j3d.TransformInterpolator
javax.media.j3d.PathInterpolator
javax.media.j3d.PositionPathInterpolator
public class PositionPathInterpolator
PositionPathInterpolator behavior. This class defines a behavior that modifies the translational component of its target TransformGroup by linearly interpolating among a series of predefined knot/position pairs (using the value generated by the specified Alpha object). The interpolated position is used to generate a translation transform in the local coordinate system of this interpolator. The first knot must have a value of 0.0. The last knot must have a value of 1.0. An intermediate knot with index k must have a value strictly greater than any knot with index less than k.
Field Summary | |
---|---|
private WakeupCriterion |
passiveWakeupCriterion
|
private Vector3f |
pos
|
private Transform3D |
position
|
private Point3f[] |
positions
|
private float |
prevAlphaValue
|
private float |
prevInterpolationValue
|
Fields inherited from class javax.media.j3d.PathInterpolator |
---|
currentInterpolationValue, currentKnotIndex |
Fields inherited from class javax.media.j3d.TransformInterpolator |
---|
axis, axisInverse, target |
Fields inherited from class javax.media.j3d.Interpolator |
---|
alpha, defaultWakeupCriterion |
Fields inherited from class javax.media.j3d.SceneGraphObject |
---|
nodeHashtable, retained |
Constructor Summary | |
---|---|
PositionPathInterpolator()
|
|
PositionPathInterpolator(Alpha alpha,
TransformGroup target,
Transform3D axisOfTransform,
float[] knots,
Point3f[] positions)
Constructs a new PositionPathInterpolator that varies the transform of the target TransformGroup. |
Method Summary | |
---|---|
Node |
cloneNode(boolean forceDuplicate)
Used to create a new instance of the node. |
void |
computeTransform(float alphaValue,
Transform3D transform)
Computes the new transform for this interpolator for a given alpha value. |
(package private) void |
duplicateAttributes(Node originalNode,
boolean forceDuplicate)
Copies all PositionPathInterpolator information from originalNode into
the current node. |
Transform3D |
getAxisOfTranslation()
Deprecated. As of Java 3D version 1.3, replaced by TransformInterpolator.getTransformAxis() |
void |
getPosition(int index,
Point3f position)
Retrieves the position value at the specified index. |
void |
getPositions(Point3f[] positions)
Copies the array of position values from this interpolator into the specified array. |
void |
setAxisOfTranslation(Transform3D axisOfTranslation)
Deprecated. As of Java 3D version 1.3, replaced by TransformInterpolator.setTransformAxis(Transform3D) |
void |
setPathArrays(float[] knots,
Point3f[] positions)
Replaces the existing arrays of knot values and position values with the specified arrays. |
private void |
setPathArrays(Point3f[] positions)
|
void |
setPosition(int index,
Point3f position)
Sets the position at the specified index for this interpolator. |
Methods inherited from class javax.media.j3d.PathInterpolator |
---|
computePathInterpolation, computePathInterpolation, getArrayLengths, getKnot, getKnots, setKnot, setKnots |
Methods inherited from class javax.media.j3d.TransformInterpolator |
---|
getTarget, getTransformAxis, processStimulus, setTarget, setTransformAxis, updateNodeReferences |
Methods inherited from class javax.media.j3d.Interpolator |
---|
getAlpha, initialize, setAlpha |
Methods inherited from class javax.media.j3d.Behavior |
---|
createRetained, getEnable, getNumSchedulingIntervals, getSchedulingBoundingLeaf, getSchedulingBounds, getSchedulingInterval, getView, getWakeupCondition, postId, setEnable, setSchedulingBoundingLeaf, setSchedulingBounds, setSchedulingInterval, wakeupOn |
Methods inherited from class javax.media.j3d.Node |
---|
checkDuplicateNode, checkForCycle, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocale, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickable |
Methods inherited from class javax.media.j3d.SceneGraphObject |
---|
capabilityBitsEmpty, checkForLiveOrCompiled, clearCapability, clearCapabilityIsFrequent, clearLive, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getNamePrefix, getNodeComponent, getUserData, isCompiled, isLive, isLiveOrCompiled, setCapability, setCapabilityIsFrequent, setCompiled, setDefaultReadCapabilities, setLive, setName, setUserData, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private Transform3D position
private Vector3f pos
private Point3f[] positions
private float prevInterpolationValue
private float prevAlphaValue
private WakeupCriterion passiveWakeupCriterion
Constructor Detail |
---|
PositionPathInterpolator()
public PositionPathInterpolator(Alpha alpha, TransformGroup target, Transform3D axisOfTransform, float[] knots, Point3f[] positions)
alpha
- the alpha object for this interpolatortarget
- the TransformGroup node affected by this translatoraxisOfTransform
- the transform that defines the local
coordinate system in which this interpolator operatesknots
- an array of knot values that specify interpolation points.positions
- an array of position values at the knots.
java.lang.IllegalArgumentException
- if the lengths of the
knots and positions arrays are not the same.Method Detail |
---|
public void setPosition(int index, Point3f position)
index
- the index of the position to be changedposition
- the new position at the indexpublic void getPosition(int index, Point3f position)
index
- the index of the value requestedposition
- the variable to receive the position value at
the specified indexpublic void setPathArrays(float[] knots, Point3f[] positions)
knots
- a new array of knot values that specify
interpolation pointspositions
- a new array of position values at the knots
java.lang.IllegalArgumentException
- if the lengths of the
knots and positions arrays are not the same.private void setPathArrays(Point3f[] positions)
public void getPositions(Point3f[] positions)
positions
- array that will receive the positionspublic void setAxisOfTranslation(Transform3D axisOfTranslation)
TransformInterpolator.setTransformAxis(Transform3D)
public Transform3D getAxisOfTranslation()
TransformInterpolator.getTransformAxis()
public void computeTransform(float alphaValue, Transform3D transform)
computeTransform
in class TransformInterpolator
alphaValue
- alpha value between 0.0 and 1.0transform
- object that receives the computed transform for
the specified alpha valuepublic Node cloneNode(boolean forceDuplicate)
cloneTree
to duplicate the current node.
cloneNode
in class 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)
void duplicateAttributes(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.
duplicateAttributes
in class PathInterpolator
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.
RestrictedAccessException
- if this object is part of a live
or compiled scenegraph.Node.duplicateNode(javax.media.j3d.Node, boolean)
,
Node.cloneTree()
,
NodeComponent.setDuplicateOnCloneTree(boolean)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |