Class ParabolicBlendVector3D


  • public class ParabolicBlendVector3D
    extends BlendVector3D
    Implements a parabolic blend

    A parabolic blend is characterized by a constant acceleration through the blend. The current
    implementation only supports blending between linear segments.
    • Constructor Detail

      • ParabolicBlendVector3D

        public ParabolicBlendVector3D​(long cPtr,
                                      boolean cMemoryOwn)
      • ParabolicBlendVector3D

        public ParabolicBlendVector3D​(LinearInterpolatorVector3D line1,
                                      LinearInterpolatorVector3D line2,
                                      double tau)
        Constructs parabolic blend between line1 and line2 with tau
        as blend time
        Parameters:
        line1 - [in] First segment
        line2 - [in] Second segment
        tau - [in] Blend time
      • ParabolicBlendVector3D

        public ParabolicBlendVector3D​(LinearInterpolatorVector3DCPtr line1,
                                      LinearInterpolatorVector3DCPtr line2,
                                      double tau)
        Constructs parabolic blend between line1 and line2 with tau
        as blend time. The segments is copied for internal storage
        Parameters:
        line1 - [in] First segment
        line2 - [in] Second segment
        tau - [in] Blend time
      • ParabolicBlendVector3D

        public ParabolicBlendVector3D​(LinearInterpolatorVector3DPtr line1,
                                      LinearInterpolatorVector3DPtr line2,
                                      double tau)
        Constructs parabolic blend between line1 and line2 with tau
        as blend time. The segments is copied for internal storage
        Parameters:
        line1 - [in] First segment
        line2 - [in] Second segment
        tau - [in] Blend time
    • Method Detail

      • x

        public Vector3D x​(double t)
        Conditional comment:

        End of conditional comment.
        Overrides:
        x in class BlendVector3D
        Parameters:
        t - [in] t\in[0,\tau_1+\tau_2]
        Returns:
        Position at time t
      • dx

        public Vector3D dx​(double t)
        Conditional comment:

        End of conditional comment.
        Overrides:
        dx in class BlendVector3D
        Parameters:
        t - [in] t\in[0,\tau_1+\tau_2]
        Returns:
        Velocity at time t
      • ddx

        public Vector3D ddx​(double t)
        Conditional comment:

        End of conditional comment.
        Overrides:
        ddx in class BlendVector3D
        Parameters:
        t - [in] t\in[0,\tau_1+\tau_2]
        Returns:
        Acceleration at time t
      • duration

        public double duration()
        get the duration of the blend
        Returns:
        duration
      • tau1

        public double tau1()
        Conditional comment:

        End of conditional comment.

        Note: For ParabolicBlend tau1()==tau2()
        Overrides:
        tau1 in class BlendVector3D
        Returns:
        \tau_1
      • tau2

        public double tau2()
        Conditional comment:

        End of conditional comment.

        Note: For ParabolicBlend tau1()==tau2()
        Overrides:
        tau2 in class BlendVector3D
        Returns:
        \tau_2