Package org.robwork.sdurw_trajectory
Class LloydHaywardBlendVector2D_f
- java.lang.Object
-
- org.robwork.sdurw_trajectory.BlendVector2D_f
-
- org.robwork.sdurw_trajectory.LloydHaywardBlendVector2D_f
-
public class LloydHaywardBlendVector2D_f extends BlendVector2D_f
Implements LloydHayward blending
The LloydHayward blend [1], makes a smooth continous differentiable transition between
two interpolators.
[1]: J. Lloyd, V. Hayward. Real-Time Trajectory Generation Using Blend Functions,
Proc. Int. Conf. on Robotics and Automation, 1991, pp. 784-798.
-
-
Constructor Summary
Constructors Constructor Description LloydHaywardBlendVector2D_f(long cPtr, boolean cMemoryOwn)LloydHaywardBlendVector2D_f(InterpolatorVector2D_f interpolator1, InterpolatorVector2D_f interpolator2, double tau)Constructs LloydHaywardBlend between interpolator1 and interpolator2.
The blend starts tau before the end of interpolator1 and finished tau after the
start of interpolator2.LloydHaywardBlendVector2D_f(InterpolatorVector2D_f interpolator1, InterpolatorVector2D_f interpolator2, double tau, double kappa)Constructs LloydHaywardBlend between interpolator1 and interpolator2.
The blend starts tau before the end of interpolator1 and finished tau after the
start of interpolator2.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Vector2Dfddx(double t)The acceleration for a given time tvoiddelete()Vector2Dfdx(double t)The velocity for a given time tstatic longgetCPtr(LloydHaywardBlendVector2D_f obj)doublekappa()Returns the kappa value used in the blenddoubletau1()
Note: For ParabolicBlend getTau1()==getTau2()doubletau2()
Note: For ParabolicBlend getTau1()==getTau2()Vector2Dfx(double t)<T>::x-
Methods inherited from class org.robwork.sdurw_trajectory.BlendVector2D_f
getCPtr
-
-
-
-
Constructor Detail
-
LloydHaywardBlendVector2D_f
public LloydHaywardBlendVector2D_f(long cPtr, boolean cMemoryOwn)
-
LloydHaywardBlendVector2D_f
public LloydHaywardBlendVector2D_f(InterpolatorVector2D_f interpolator1, InterpolatorVector2D_f interpolator2, double tau, double kappa)
Constructs LloydHaywardBlend between interpolator1 and interpolator2.
The blend starts tau before the end of interpolator1 and finished tau after the
start of interpolator2. The constant kappa specifies characteristics of the blend
as described in [1].
- Parameters:
interpolator1- [in] First interpolator, no ownership transferredinterpolator2- [in] Second interpolator, no ownership transferredtau- [in] Blend timekappa- [in] Blend characteristic (default 15/2 for acceleration minimal blend
between linie segments)
-
LloydHaywardBlendVector2D_f
public LloydHaywardBlendVector2D_f(InterpolatorVector2D_f interpolator1, InterpolatorVector2D_f interpolator2, double tau)
Constructs LloydHaywardBlend between interpolator1 and interpolator2.
The blend starts tau before the end of interpolator1 and finished tau after the
start of interpolator2. The constant kappa specifies characteristics of the blend
as described in [1].
- Parameters:
interpolator1- [in] First interpolator, no ownership transferredinterpolator2- [in] Second interpolator, no ownership transferredtau- [in] Blend time
-
-
Method Detail
-
getCPtr
public static long getCPtr(LloydHaywardBlendVector2D_f obj)
-
delete
public void delete()
- Overrides:
deletein classBlendVector2D_f
-
x
public Vector2Df x(double t)
<T>::x- Overrides:
xin classBlendVector2D_f- Parameters:
t- [in] t\in[0,\tau_1+\tau_2]- Returns:
- Position at time t
-
dx
public Vector2Df dx(double t)
Description copied from class:BlendVector2D_fThe velocity for a given time t- Overrides:
dxin classBlendVector2D_f- Parameters:
t- [in] t\in[0,\tau_1+\tau_2]- Returns:
- Velocity at time t
-
ddx
public Vector2Df ddx(double t)
Description copied from class:BlendVector2D_fThe acceleration for a given time t- Overrides:
ddxin classBlendVector2D_f- Parameters:
t- [in] t\in[0,\tau_1+\tau_2]- Returns:
- Acceleration at time t
-
tau1
public double tau1()
Note: For ParabolicBlend getTau1()==getTau2()- Overrides:
tau1in classBlendVector2D_f- Returns:
- \tau_1
-
tau2
public double tau2()
Note: For ParabolicBlend getTau1()==getTau2()- Overrides:
tau2in classBlendVector2D_f- Returns:
- \tau_2
-
kappa
public double kappa()
Returns the kappa value used in the blend
-
-