com.sun.j3d.utils.behaviors.interpolators
Class TCBSplinePathInterpolator

java.lang.Object
  |
  +--javax.media.j3d.SceneGraphObject
        |
        +--javax.media.j3d.Node
              |
              +--javax.media.j3d.Leaf
                    |
                    +--javax.media.j3d.Behavior
                          |
                          +--javax.media.j3d.Interpolator
                                |
                                +--com.sun.j3d.utils.behaviors.interpolators.TCBSplinePathInterpolator
Direct Known Subclasses:
RotPosScaleTCBSplinePathInterpolator

public abstract class TCBSplinePathInterpolator
extends Interpolator

TCBSplinePathInterpolator behavior. This class defines the base class for all TCB (Kochanek-Bartels) Spline Path Interpolators.

Since:
Java3D 1.1

Field Summary
protected  float currentU
           
protected  TCBKeyFrame[] keyFrames
           
protected  int lowerKnot
           
protected  int upperKnot
           
 
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_PICKABLE_READ, ALLOW_PICKABLE_WRITE, ENABLE_COLLISION_REPORTING, ENABLE_PICK_REPORTING
 
Constructor Summary
TCBSplinePathInterpolator(Alpha alpha, TCBKeyFrame[] keys)
           
 
Method Summary
protected  void computePathInterpolation()
           
 void duplicateNode(Node originalNode, boolean forceDuplicate)
          Copies all node information from originalNode into the current node.
 int getArrayLength()
           
 TCBKeyFrame getKeyFrame(int index)
           
 
Methods inherited from class javax.media.j3d.Interpolator
getAlpha, initialize, setAlpha
 
Methods inherited from class javax.media.j3d.Behavior
getEnable, getSchedulingBoundingLeaf, getSchedulingBounds, getView, postId, processStimulus, setEnable, setSchedulingBoundingLeaf, setSchedulingBounds, updateNodeReferences, wakeupOn
 
Methods inherited from class javax.media.j3d.Node
cloneNode, cloneTree, cloneTree, cloneTree, 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
 

Field Detail

keyFrames

protected TCBKeyFrame[] keyFrames

currentU

protected float currentU

lowerKnot

protected int lowerKnot

upperKnot

protected int upperKnot
Constructor Detail

TCBSplinePathInterpolator

public TCBSplinePathInterpolator(Alpha alpha,
                                 TCBKeyFrame[] keys)
Method Detail

getArrayLength

public int getArrayLength()

getKeyFrame

public TCBKeyFrame getKeyFrame(int index)

computePathInterpolation

protected void computePathInterpolation()

duplicateNode

public void duplicateNode(Node originalNode,
                          boolean forceDuplicate)
Description copied from class: Node
Copies all node information from 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.
NOTE: Applications should not call this method directly. It should only be called by the cloneNode method.

Overrides:
duplicateNode in class Node
Following copied from class: javax.media.j3d.Node
Parameters:
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.
See Also:
Group.cloneNode(boolean), Node.duplicateNode(javax.media.j3d.Node, boolean), Node.cloneTree(), NodeComponent.setDuplicateOnCloneTree(boolean)