Package org.robwork.sdurw_trajectory
Class LloydHaywardBlendRotation3D
- java.lang.Object
-
- org.robwork.sdurw_trajectory.BlendRotation3D
-
- org.robwork.sdurw_trajectory.LloydHaywardBlendRotation3D
-
public class LloydHaywardBlendRotation3D extends BlendRotation3D
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 LloydHaywardBlendRotation3D(long cPtr, boolean cMemoryOwn)LloydHaywardBlendRotation3D(InterpolatorRotation3D interpolator1, InterpolatorRotation3D 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.LloydHaywardBlendRotation3D(InterpolatorRotation3D interpolator1, InterpolatorRotation3D 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 Rotation3Dddx(double t)The acceleration for a given time tvoiddelete()Rotation3Ddx(double t)The velocity for a given time tstatic longgetCPtr(LloydHaywardBlendRotation3D obj)doublekappa()Returns the kappa value used in the blenddoubletau1()
Note: For ParabolicBlend getTau1()==getTau2()doubletau2()
Note: For ParabolicBlend getTau1()==getTau2()Rotation3Dx(double t)<T>::x-
Methods inherited from class org.robwork.sdurw_trajectory.BlendRotation3D
getCPtr
-
-
-
-
Constructor Detail
-
LloydHaywardBlendRotation3D
public LloydHaywardBlendRotation3D(long cPtr, boolean cMemoryOwn)
-
LloydHaywardBlendRotation3D
public LloydHaywardBlendRotation3D(InterpolatorRotation3D interpolator1, InterpolatorRotation3D 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)
-
LloydHaywardBlendRotation3D
public LloydHaywardBlendRotation3D(InterpolatorRotation3D interpolator1, InterpolatorRotation3D 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(LloydHaywardBlendRotation3D obj)
-
delete
public void delete()
- Overrides:
deletein classBlendRotation3D
-
x
public Rotation3D x(double t)
<T>::x- Overrides:
xin classBlendRotation3D- Parameters:
t- [in] t\in[0,\tau_1+\tau_2]- Returns:
- Position at time t
-
dx
public Rotation3D dx(double t)
Description copied from class:BlendRotation3DThe velocity for a given time t- Overrides:
dxin classBlendRotation3D- Parameters:
t- [in] t\in[0,\tau_1+\tau_2]- Returns:
- Velocity at time t
-
ddx
public Rotation3D ddx(double t)
Description copied from class:BlendRotation3DThe acceleration for a given time t- Overrides:
ddxin classBlendRotation3D- 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 classBlendRotation3D- Returns:
- \tau_1
-
tau2
public double tau2()
Note: For ParabolicBlend getTau1()==getTau2()- Overrides:
tau2in classBlendRotation3D- Returns:
- \tau_2
-
kappa
public double kappa()
Returns the kappa value used in the blend
-
-