Class RotPosScaleTCBSplinePathInterpolator


public class RotPosScaleTCBSplinePathInterpolator extends TCBSplinePathInterpolator
RotPosScaleTCBSplinePathInterpolator behavior. This class defines a behavior that varies the rotational, translational, and scale components of its target TransformGroup by using the Kochanek-Bartels cubic spline interpolation to interpolate among a series of key frames (using the value generated by the specified Alpha object). The interpolated position, orientation, and scale are used to generate a transform in the local coordinate system of this interpolator.
Since:
Java3D 1.1
  • Constructor Details

    • RotPosScaleTCBSplinePathInterpolator

      public RotPosScaleTCBSplinePathInterpolator(Alpha alpha, TransformGroup target, Transform3D axisOfTransform, TCBKeyFrame[] keys)
      Constructs a new RotPosScaleTCBSplinePathInterpolator object that varies the rotation, translation, and scale of the target TransformGroup's transform. At least 2 key frames are required for this interpolator. The first key frame's knot must have a value of 0.0 and the last knot must have a value of 1.0. An intermediate key frame with index k must have a knot value strictly greater than the knot value of a key frame with index less than k.
      Parameters:
      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.
      keys - an array of key frames that defien the motion path
  • Method Details

    • setAxisOfRotPosScale

      public void setAxisOfRotPosScale(Transform3D axisOfRotPosScale)
      Deprecated.
      As of Java 3D version 1.3, replaced by TransformInterpolator.setTransformAxis(Transform3D)
    • getAxisOfRotPosScale

      public Transform3D getAxisOfRotPosScale()
      Deprecated.
      As of Java 3D version 1.3, replaced by TransformInterpolator.getTransformAxis()
    • computeTransform

      public void computeTransform(float alphaValue, Transform3D transform)
      Computes the new transform for this interpolator for a given alpha value.
      Specified by:
      computeTransform in class TransformInterpolator
      Parameters:
      alphaValue - alpha value between 0.0 and 1.0
      transform - object that receives the computed transform for the specified alpha value
      Since:
      Java 3D 1.3
    • cloneNode

      public Node cloneNode(boolean forceDuplicate)
      Used to create a new instance of the node. This routine is called by cloneTree to duplicate the current node.
      Overrides:
      cloneNode in class Node
      Parameters:
      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:
    • duplicateNode

      public void duplicateNode(Node originalNode, boolean forceDuplicate)
      Copies RotPosScaleTCBSplinePathInterpolator information from originalNode into the current node. This method is called from the cloneNode method which is, in turn, called by the cloneTree method.

      Overrides:
      duplicateNode in class TCBSplinePathInterpolator
      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.
      Throws:
      RestrictedAccessException - if this object is part of a live or compiled scenegraph.
      See Also: