RobWorkProject
23.9.11-
|
Forward declaration for parabolic blend to make the LinearInterpolator<rw::math::Transform3D<T> > a friend. More...
#include <ParabolicBlend.hpp>
Inherits Blend< T >.
Public Member Functions | |
ParabolicBlend (const LinearInterpolator< T > &line1, const LinearInterpolator< T > &line2, double tau) | |
Constructs parabolic blend between line1 and line2 with tau as blend time. More... | |
ParabolicBlend (const typename LinearInterpolator< T >::CPtr line1, const typename LinearInterpolator< T >::CPtr line2, double tau) | |
Constructs parabolic blend between line1 and line2 with tau as blend time. The segments is copied for internal storage. More... | |
ParabolicBlend (const typename LinearInterpolator< T >::Ptr line1, const typename LinearInterpolator< T >::Ptr line2, double tau) | |
Constructs parabolic blend between line1 and line2 with tau as blend time. The segments is copied for internal storage. More... | |
ParabolicBlend (const LinearInterpolator< T > *line1, const LinearInterpolator< T > *line2, double tau) | |
Constructs parabolic blend between line1 and line2 with tau as blend time. The segments is copied for internal storage. More... | |
virtual | ~ParabolicBlend () |
Destructor. | |
virtual T | x (double t) const |
The position for a given time t. More... | |
virtual T | dx (double t) const |
The velocity for a given time t. More... | |
virtual T | ddx (double t) const |
The acceleration for a given time t. More... | |
double | duration () const |
get the duration of the blend More... | |
double | tau1 () const |
double | tau2 () const |
Public Member Functions inherited from Blend< T > | |
virtual | ~Blend () |
Destructor. | |
Additional Inherited Members | |
Public Types inherited from Blend< T > | |
typedef rw::core::Ptr< Blend > | Ptr |
smart pointer type to this class | |
Forward declaration for parabolic blend to make the LinearInterpolator<rw::math::Transform3D<T> > a friend.
Forward declaration for parabolic blend to make the RampInterpolator<rw::math::Transform3D<T> > a friend.
Implements a parabolic blend.
A parabolic blend is characterized by a constant acceleration through the blend. The current implementation only supports blending between linear segments.
|
inline |
Constructs parabolic blend between line1 and line2 with tau as blend time.
line1 | [in] First segment |
line2 | [in] Second segment |
tau | [in] Blend time |
|
inlineexplicit |
Constructs parabolic blend between line1 and line2 with tau as blend time. The segments is copied for internal storage.
line1 | [in] First segment |
line2 | [in] Second segment |
tau | [in] Blend time |
|
inline |
Constructs parabolic blend between line1 and line2 with tau as blend time. The segments is copied for internal storage.
line1 | [in] First segment |
line2 | [in] Second segment |
tau | [in] Blend time |
|
inline |
Constructs parabolic blend between line1 and line2 with tau as blend time. The segments is copied for internal storage.
line1 | [in] First segment. |
line2 | [in] Second segment |
tau | [in] Blend time |
|
inlinevirtual |
The acceleration for a given time t.
t | [in] \( t\in[0,\tau_1+\tau_2] \) |
Implements Blend< T >.
|
inline |
get the duration of the blend
|
inlinevirtual |
The velocity for a given time t.
t | [in] \( t\in[0,\tau_1+\tau_2] \) |
Implements Blend< T >.
|
inlinevirtual |
Implements Blend< T >.
|
inlinevirtual |
Implements Blend< T >.
|
inlinevirtual |
The position for a given time t.
t | [in] \( t\in[0,\tau_1+\tau_2] \) |
Implements Blend< T >.