Package org.robwork.sdurw_trajectory
Class LinearInterpolatorRotation3D
- java.lang.Object
-
- org.robwork.sdurw_trajectory.InterpolatorRotation3D
-
- org.robwork.sdurw_trajectory.LinearInterpolatorRotation3D
-
public class LinearInterpolatorRotation3D extends InterpolatorRotation3D
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 Summary
Constructors Constructor Description LinearInterpolatorRotation3D(long cPtr, boolean cMemoryOwn)
LinearInterpolatorRotation3D(Rotation3D start, Rotation3D end, double duration)
Construct LinearInterpolator starting a start and finishing in end
and taking duration time.
If duration <= 0 an exception is thrown
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Rotation3D
ddx(double t)
Acceleration at time tvoid
delete()
double
duration()
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.Rotation3D
dx(double t)
Velocity at time tstatic long
getCPtr(LinearInterpolatorRotation3D obj)
Rotation3D
getEnd()
Returns the end position of the interpolatorRotation3D
getStart()
Returns the start position of the interpolatorRotation3D
x(double t)
Position at time t-
Methods inherited from class org.robwork.sdurw_trajectory.InterpolatorRotation3D
getCPtr
-
-
-
-
Constructor Detail
-
LinearInterpolatorRotation3D
public LinearInterpolatorRotation3D(long cPtr, boolean cMemoryOwn)
-
LinearInterpolatorRotation3D
public LinearInterpolatorRotation3D(Rotation3D start, Rotation3D 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 interpolatorend
- [in] End of interpolatorduration
- [in] Time it takes to from one end to the other.
-
-
Method Detail
-
getCPtr
public static long getCPtr(LinearInterpolatorRotation3D obj)
-
delete
public void delete()
- Overrides:
delete
in classInterpolatorRotation3D
-
x
public Rotation3D x(double t)
Description copied from class:InterpolatorRotation3D
Position at time t- Overrides:
x
in classInterpolatorRotation3D
- Parameters:
t
- [in] time between 0 and length- Returns:
- Position
-
dx
public Rotation3D dx(double t)
Description copied from class:InterpolatorRotation3D
Velocity at time t- Overrides:
dx
in classInterpolatorRotation3D
- Parameters:
t
- [in] time between 0 and length- Returns:
- Velocity
-
ddx
public Rotation3D ddx(double t)
Description copied from class:InterpolatorRotation3D
Acceleration at time t- Overrides:
ddx
in classInterpolatorRotation3D
- Parameters:
t
- [in] time between 0 and length- Returns:
- Acceleration
-
getStart
public Rotation3D getStart()
Returns the start position of the interpolator- Returns:
- The start position of the interpolator
-
getEnd
public Rotation3D getEnd()
Returns the end position of the interpolator- Returns:
- The end position of the interpolator
-
duration
public double duration()
Description copied from class:InterpolatorRotation3D
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 classInterpolatorRotation3D
- Returns:
- duration
-
-