Package org.robwork.sdurw_trajectory
Class LloydHaywardBlendTransform3D
- java.lang.Object
-
- org.robwork.sdurw_trajectory.BlendTransform3D
-
- org.robwork.sdurw_trajectory.LloydHaywardBlendTransform3D
-
public class LloydHaywardBlendTransform3D extends BlendTransform3D
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 LloydHaywardBlendTransform3D(long cPtr, boolean cMemoryOwn)
LloydHaywardBlendTransform3D(InterpolatorTransform3D interpolator1, InterpolatorTransform3D 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.LloydHaywardBlendTransform3D(InterpolatorTransform3D interpolator1, InterpolatorTransform3D 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 Transform3D
ddx(double t)
The acceleration for a given time tvoid
delete()
Transform3D
dx(double t)
The velocity for a given time tstatic long
getCPtr(LloydHaywardBlendTransform3D obj)
double
kappa()
Returns the kappa value used in the blenddouble
tau1()
Note: For ParabolicBlend getTau1()==getTau2()double
tau2()
Note: For ParabolicBlend getTau1()==getTau2()Transform3D
x(double t)
<T>::x-
Methods inherited from class org.robwork.sdurw_trajectory.BlendTransform3D
getCPtr
-
-
-
-
Constructor Detail
-
LloydHaywardBlendTransform3D
public LloydHaywardBlendTransform3D(long cPtr, boolean cMemoryOwn)
-
LloydHaywardBlendTransform3D
public LloydHaywardBlendTransform3D(InterpolatorTransform3D interpolator1, InterpolatorTransform3D 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)
-
LloydHaywardBlendTransform3D
public LloydHaywardBlendTransform3D(InterpolatorTransform3D interpolator1, InterpolatorTransform3D 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(LloydHaywardBlendTransform3D obj)
-
delete
public void delete()
- Overrides:
delete
in classBlendTransform3D
-
x
public Transform3D x(double t)
<T>::x- Overrides:
x
in classBlendTransform3D
- Parameters:
t
- [in] t\in[0,\tau_1+\tau_2]- Returns:
- Position at time t
-
dx
public Transform3D dx(double t)
Description copied from class:BlendTransform3D
The velocity for a given time t- Overrides:
dx
in classBlendTransform3D
- Parameters:
t
- [in] t\in[0,\tau_1+\tau_2]- Returns:
- Velocity at time t
-
ddx
public Transform3D ddx(double t)
Description copied from class:BlendTransform3D
The acceleration for a given time t- Overrides:
ddx
in classBlendTransform3D
- 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:
tau1
in classBlendTransform3D
- Returns:
- \tau_1
-
tau2
public double tau2()
Note: For ParabolicBlend getTau1()==getTau2()- Overrides:
tau2
in classBlendTransform3D
- Returns:
- \tau_2
-
kappa
public double kappa()
Returns the kappa value used in the blend
-
-