Package org.robwork.sdurw_trajectory
Class LinearInterpolator_d_f
- java.lang.Object
-
- org.robwork.sdurw_trajectory.Interpolator_d_f
-
- org.robwork.sdurw_trajectory.LinearInterpolator_d_f
-
public class LinearInterpolator_d_f extends Interpolator_d_f
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 LinearInterpolator_d_f(float start, float end, double duration)Construct LinearInterpolator starting a start and finishing in end
and taking duration time.
If duration <= 0 an exception is thrown
LinearInterpolator_d_f(long cPtr, boolean cMemoryOwn)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description floatddx(double t)Acceleration at time tvoiddelete()doubleduration()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.floatdx(double t)Velocity at time tstatic longgetCPtr(LinearInterpolator_d_f obj)floatgetEnd()Returns the end position of the interpolatorfloatgetStart()Returns the start position of the interpolatorfloatx(double t)Position at time t-
Methods inherited from class org.robwork.sdurw_trajectory.Interpolator_d_f
getCPtr
-
-
-
-
Constructor Detail
-
LinearInterpolator_d_f
public LinearInterpolator_d_f(long cPtr, boolean cMemoryOwn)
-
LinearInterpolator_d_f
public LinearInterpolator_d_f(float start, float 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(LinearInterpolator_d_f obj)
-
delete
public void delete()
- Overrides:
deletein classInterpolator_d_f
-
x
public float x(double t)
Description copied from class:Interpolator_d_fPosition at time t- Overrides:
xin classInterpolator_d_f- Parameters:
t- [in] time between 0 and length- Returns:
- Position
-
dx
public float dx(double t)
Description copied from class:Interpolator_d_fVelocity at time t- Overrides:
dxin classInterpolator_d_f- Parameters:
t- [in] time between 0 and length- Returns:
- Velocity
-
ddx
public float ddx(double t)
Description copied from class:Interpolator_d_fAcceleration at time t- Overrides:
ddxin classInterpolator_d_f- Parameters:
t- [in] time between 0 and length- Returns:
- Acceleration
-
getStart
public float getStart()
Returns the start position of the interpolator- Returns:
- The start position of the interpolator
-
getEnd
public float getEnd()
Returns the end position of the interpolator- Returns:
- The end position of the interpolator
-
duration
public double duration()
Description copied from class:Interpolator_d_fReturns 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:
durationin classInterpolator_d_f- Returns:
- duration
-
-