public class RotPosScalePathInterpolator extends PathInterpolator
| Modifier and Type | Field and Description |
|---|---|
private WakeupCriterion |
passiveWakeupCriterion |
private Vector3f |
pos |
private Point3f[] |
positions |
private float |
prevAlphaValue |
private float |
prevInterpolationValue |
private Quat4f[] |
quats |
private Transform3D |
rotation |
private float[] |
scales |
private Matrix4d |
sMat |
private Matrix4d |
tMat |
private Quat4f |
tQuat |
currentInterpolationValue, currentKnotIndexaxis, axisInverse, targetalpha, defaultWakeupCriterionALLOW_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_LOCALE_READ, ALLOW_PARENT_READ, ALLOW_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTINGnodeHashtable, retained| Constructor and Description |
|---|
RotPosScalePathInterpolator() |
RotPosScalePathInterpolator(Alpha alpha,
TransformGroup target,
Transform3D axisOfTransform,
float[] knots,
Quat4f[] quats,
Point3f[] positions,
float[] scales)
Constructs a new RotPosScalePathInterpolator object that varies the
rotation, translation, and scale of the target TransformGroup's
transform.
|
| Modifier and Type | Method and Description |
|---|---|
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 RotPosScalePathInterpolator information from
originalNode into
the current node. |
Transform3D |
getAxisOfRotPosScale()
Deprecated.
As of Java 3D version 1.3, replaced by
TransformInterpolator.geTransformAxis() |
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 |
getQuat(int index,
Quat4f quat)
Retrieves the quat value at the specified index.
|
void |
getQuats(Quat4f[] quats)
Copies the array of quaternion values from this interpolator
into the specified array.
|
float |
getScale(int index)
Retrieves the scale at the specified index.
|
void |
getScales(float[] scales)
Copies the array of scale values from this interpolator
into the specified array.
|
void |
setAxisOfRotPosScale(Transform3D axisOfRotPosScale)
Deprecated.
As of Java 3D version 1.3, replaced by
TransformInterpolator.setTransformAxis(Transform3D) |
void |
setPathArrays(float[] knots,
Quat4f[] quats,
Point3f[] positions,
float[] scales)
Replaces the existing arrays of knot values, quaternion
values, position values, and scale values with the specified arrays.
|
private void |
setPathArrays(Quat4f[] quats,
Point3f[] positions,
float[] scales) |
void |
setPosition(int index,
Point3f position)
Sets the position value at the specified index for
this interpolator.
|
void |
setQuat(int index,
Quat4f quat)
Sets the quat value at the specified index for this
interpolator.
|
void |
setScale(int index,
float scale)
Sets the scale at the specified index for this
interpolator.
|
computePathInterpolation, computePathInterpolation, getArrayLengths, getKnot, getKnots, setKnot, setKnotsgetTarget, getTransformAxis, processStimulus, setTarget, setTransformAxis, updateNodeReferencesgetAlpha, initialize, setAlphacreateRetained, getEnable, getNumSchedulingIntervals, getSchedulingBoundingLeaf, getSchedulingBounds, getSchedulingInterval, getView, getWakeupCondition, postId, setEnable, setSchedulingBoundingLeaf, setSchedulingBounds, setSchedulingInterval, wakeupOncheckDuplicateNode, checkForCycle, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, cloneTree, duplicateNode, getBounds, getBoundsAutoCompute, getCollidable, getLocale, getLocalToVworld, getLocalToVworld, getParent, getPickable, setBounds, setBoundsAutoCompute, setCollidable, setPickablecapabilityBitsEmpty, checkForLiveOrCompiled, clearCapability, clearCapabilityIsFrequent, clearLive, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getNamePrefix, getNodeComponent, getUserData, isCompiled, isLive, isLiveOrCompiled, setCapability, setCapabilityIsFrequent, setCompiled, setDefaultReadCapabilities, setLive, setName, setUserData, toStringprivate Transform3D rotation
private Vector3f pos
private Quat4f tQuat
private Matrix4d tMat
private Matrix4d sMat
private Quat4f[] quats
private Point3f[] positions
private float[] scales
private float prevInterpolationValue
private float prevAlphaValue
private WakeupCriterion passiveWakeupCriterion
RotPosScalePathInterpolator()
public RotPosScalePathInterpolator(Alpha alpha, TransformGroup target, Transform3D axisOfTransform, float[] knots, Quat4f[] quats, Point3f[] positions, float[] scales)
alpha - the alpha object for this interpolator.target - the TransformGroup node affected by this interpolator.axisOfTransform - the transform that specifies the local
coordinate system in which this interpolator operates.knots - an array of knot values that specify interpolation points.quats - an array of quaternion values at the knots.positions - an array of position values at the knots.scales - an array of scale component values at the knots.java.lang.IllegalArgumentException - if the lengths of the
knots, quats, positions, and scales arrays are not all the same.public void setQuat(int index,
Quat4f quat)
index - the index to be changedquat - the new quat value at indexpublic void getQuat(int index,
Quat4f quat)
index - the index of the value requestedquat - returns the interpolator's quat value at the indexpublic void setPosition(int index,
Point3f position)
index - the index to be changedposition - the new position value at indexpublic void getPosition(int index,
Point3f position)
index - the index of the value requestedposition - returns the interpolator's position value at the indexpublic void setScale(int index,
float scale)
index - the index to be changedscale - the new scale at indexpublic float getScale(int index)
index - the index of the value requestedpublic void setPathArrays(float[] knots,
Quat4f[] quats,
Point3f[] positions,
float[] scales)
knots - a new array of knot values that specify
interpolation points.quats - a new array of quaternion values at the knots.positions - a new array of position values at the knots.scales - a new array of scale component values at the knots.java.lang.IllegalArgumentException - if the lengths of the
knots, quats, positions, and scales arrays are not all the same.public void getQuats(Quat4f[] quats)
quats - array that will receive the quats.public void getPositions(Point3f[] positions)
positions - array that will receive the positions.public void getScales(float[] scales)
scales - array that will receive the scales.public void setAxisOfRotPosScale(Transform3D axisOfRotPosScale)
TransformInterpolator.setTransformAxis(Transform3D)public Transform3D getAxisOfRotPosScale()
TransformInterpolator.geTransformAxis()public void computeTransform(float alphaValue,
Transform3D transform)
computeTransform in class TransformInterpolatoralphaValue - 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 NodeforceDuplicate - 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 PathInterpolatororiginalNode - 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)Copyright 1996-2008 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.