Class LinearInterpolatorVector3D


  • public class LinearInterpolatorVector3D
    extends InterpolatorVector3D
    Make a linear interpolation between to position

    Given a start \mathbf{s}, end \mathbf{e} and duration d
    the interpolation is implemented as \mathbf{x}(t)=\mathbf{s} + (\mathbf{e}-\mathbf{s})*t/d.

    The template argument given needs to support addition with the "+" operator
    and scaling with a double using the "*" operator.

    For use with a rw::math::Transform3D see the template specialization
    • Constructor Detail

      • LinearInterpolatorVector3D

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

        public LinearInterpolatorVector3D​(Vector3D start,
                                          Vector3D end,
                                          double duration)
        Construct LinearInterpolator starting a start and finishing in end
        and taking duration time.

        If duration <= 0 an exception is thrown

        Parameters:
        start - [in] Start of interpolator
        end - [in] End of interpolator
        duration - [in] Time it takes to from one end to the other.
    • Method Detail

      • getStart

        public Vector3D getStart()
        Returns the start position of the interpolator
        Returns:
        The start position of the interpolator
      • getEnd

        public Vector3D getEnd()
        Returns the end position of the interpolator
        Returns:
        The end position of the interpolator
      • duration

        public double duration()
        Description copied from class: InterpolatorVector3D
        Returns the duration of the interpolator

        The duration is defined as the time it takes to move from one end
        of the interpolator to the other.
        Overrides:
        duration in class InterpolatorVector3D
        Returns:
        duration