RobWorkProject  23.9.11-
Public Member Functions | List of all members
ParabolicBlend< rw::math::Rotation3D< T > > Class Template Reference

Template specialization of ParabolicBlend for using a rw::math::Rotation3D<T> More...

#include <ParabolicBlend.hpp>

Inherits Blend< rw::math::Rotation3D< T > >.

Public Member Functions

 ParabolicBlend (rw::core::Ptr< rw::trajectory::LinearInterpolator< rw::math::Rotation3D< T >>> line1, rw::core::Ptr< rw::trajectory::LinearInterpolator< rw::math::Rotation3D< T >>> line2, double tau)
 Constructs a ParabolicBlend for blending the rotation between int1 and int2. More...
 
 ParabolicBlend (rw::core::Ptr< const rw::trajectory::LinearInterpolator< rw::math::Rotation3D< T >>> line1, rw::core::Ptr< const rw::trajectory::LinearInterpolator< rw::math::Rotation3D< T >>> line2, double tau)
 Constructs a ParabolicBlend for blending the rotation between int1 and int2. More...
 
 ParabolicBlend (const rw::trajectory::LinearInterpolator< rw::math::Rotation3D< T >> *line1, const rw::trajectory::LinearInterpolator< rw::math::Rotation3D< T >> *line2, double tau)
 Constructs a ParabolicBlend for blending the rotation between int1 and int2. More...
 
 ParabolicBlend (const LinearInterpolator< rw::math::Rotation3D< T >> &line1, const LinearInterpolator< rw::math::Rotation3D< T >> &line2, double tau)
 Constructs a ParabolicBlend for blending the rotation between int1 and int2. More...
 
virtual ~ParabolicBlend ()
 Destructor.
 
rw::math::Rotation3D< T > x (double t) const
 The position for a given time t. More...
 
rw::math::Rotation3D< T > dx (double t) const
 The velocity for a given time t. More...
 
rw::math::Rotation3D< T > ddx (double t) const
 The acceleration for a given time t. More...
 
double duration () const
 get the duration of the blend More...
 
rw::math::Rotation3D< T > deviation () const
 get the deviation from the intersection point More...
 
double tau1 () const
 
double tau2 () const
 
- Public Member Functions inherited from Blend< rw::math::Rotation3D< T > >
virtual ~Blend ()
 Destructor.
 

Additional Inherited Members

- Public Types inherited from Blend< rw::math::Rotation3D< T > >
typedef rw::core::Ptr< BlendPtr
 smart pointer type to this class
 

Detailed Description

template<class T>
class rw::trajectory::ParabolicBlend< rw::math::Rotation3D< T > >

Template specialization of ParabolicBlend for using a rw::math::Rotation3D<T>

The rotation is blended by calculating equivalent angle axis rotations and blend between these with an ordinary parabolic blend.

Constructor & Destructor Documentation

◆ ParabolicBlend() [1/4]

Constructs a ParabolicBlend for blending the rotation between int1 and int2.

Parameters
line1[in] LinearInterpolator representing the first rotational segment
line2[in] LinearInterpolator representing the second rotational segment
tau[in] The blend time

◆ ParabolicBlend() [2/4]

Constructs a ParabolicBlend for blending the rotation between int1 and int2.

Parameters
line1[in] LinearInterpolator representing the first rotational segment
line2[in] LinearInterpolator representing the second rotational segment
tau[in] The blend time

◆ ParabolicBlend() [3/4]

Constructs a ParabolicBlend for blending the rotation between int1 and int2.

Parameters
line1[in] LinearInterpolator representing the first rotational segment
line2[in] LinearInterpolator representing the second rotational segment
tau[in] The blend time

◆ ParabolicBlend() [4/4]

ParabolicBlend ( const LinearInterpolator< rw::math::Rotation3D< T >> &  line1,
const LinearInterpolator< rw::math::Rotation3D< T >> &  line2,
double  tau 
)
inline

Constructs a ParabolicBlend for blending the rotation between int1 and int2.

Parameters
line1[in] LinearInterpolator representing the first rotational segment
line2[in] LinearInterpolator representing the second rotational segment
tau[in] The blend time

Member Function Documentation

◆ ddx()

rw::math::Rotation3D<T> ddx ( double  t) const
inlinevirtual

The acceleration for a given time t.

Parameters
t[in] \( t\in[0,\tau_1+\tau_2] \)
Returns
Acceleration at time t

Implements Blend< rw::math::Rotation3D< T > >.

◆ deviation()

rw::math::Rotation3D<T> deviation ( ) const
inline

get the deviation from the intersection point

Returns
the deviation

◆ duration()

double duration ( ) const
inline

get the duration of the blend

Returns
duration

◆ dx()

rw::math::Rotation3D<T> dx ( double  t) const
inlinevirtual

The velocity for a given time t.

Parameters
t[in] \( t\in[0,\tau_1+\tau_2] \)
Returns
Velocity at time t

Implements Blend< rw::math::Rotation3D< T > >.

◆ tau1()

double tau1 ( ) const
inlinevirtual

◆ tau2()

double tau2 ( ) const
inlinevirtual

◆ x()

rw::math::Rotation3D<T> x ( double  t) const
inlinevirtual

The position for a given time t.

Parameters
t[in] \( t\in[0,\tau_1+\tau_2] \)
Returns
Position at time t

Implements Blend< rw::math::Rotation3D< T > >.


The documentation for this class was generated from the following file: