cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
robQuintic Class Reference

#include <robQuintic.h>

Inheritance diagram for robQuintic:
robFunctionRn robFunction

Public Member Functions

 robQuintic (void)
 
 robQuintic (double t1, const vctFixedSizeVector< double, 3 > &y1, const vctFixedSizeVector< double, 3 > &y1d, const vctFixedSizeVector< double, 3 > &y1dd, double t2, const vctFixedSizeVector< double, 3 > &y2, const vctFixedSizeVector< double, 3 > &y2d, const vctFixedSizeVector< double, 3 > &y2dd)
 Define a 3D quintic function $Q: R^1\rightarrow R^3 $. More...
 
 robQuintic (double t1, const vctDynamicVector< double > &y1, const vctDynamicVector< double > &y1d, const vctDynamicVector< double > &y1dd, double t2, const vctDynamicVector< double > &y2, const vctDynamicVector< double > &y2d, const vctDynamicVector< double > &y2dd)
 Define a N quintic functions $Q: R^1\rightarrow R^N $. More...
 
virtual ~robQuintic ()
 
void Set (double t1, const vctDynamicVector< double > &y1, const vctDynamicVector< double > &y1d, const vctDynamicVector< double > &y1dd, double t2, const vctDynamicVector< double > &y2, const vctDynamicVector< double > &y2d, const vctDynamicVector< double > &y2dd)
 
void Evaluate (double t, vctFixedSizeVector< double, 3 > &y, vctFixedSizeVector< double, 3 > &yd, vctFixedSizeVector< double, 3 > &ydd)
 
void Evaluate (double t, vctDynamicVector< double > &y, vctDynamicVector< double > &yd, vctDynamicVector< double > &ydd)
 
void Blend (robFunction *function, const vctDynamicVector< double > &qdmax, const vctDynamicVector< double > &qddmax)
 
void Blend (robFunction *, double, double)
 
- Public Member Functions inherited from robFunctionRn
 robFunctionRn (void)
 
 robFunctionRn (double t1, const vctFixedSizeVector< double, 3 > &p1, const vctFixedSizeVector< double, 3 > &p1d, const vctFixedSizeVector< double, 3 > &p1dd, double t2, const vctFixedSizeVector< double, 3 > &p2, const vctFixedSizeVector< double, 3 > &p2d, const vctFixedSizeVector< double, 3 > &p2dd)
 
 robFunctionRn (double t1, const vctDynamicVector< double > &p1, const vctDynamicVector< double > &p1d, const vctDynamicVector< double > &p1dd, double t2, const vctDynamicVector< double > &p2, const vctDynamicVector< double > &p2d, const vctDynamicVector< double > &p2dd)
 
virtual ~robFunctionRn ()
 
void Set (double t1, const vctDynamicVector< double > &p1, const vctDynamicVector< double > &p1d, const vctDynamicVector< double > &p1dd, double t2, const vctDynamicVector< double > &p2, const vctDynamicVector< double > &p2d, const vctDynamicVector< double > &p2dd)
 
void InitialState (vctDynamicVector< double > &p, vctDynamicVector< double > &pd, vctDynamicVector< double > &pdd)
 
void FinalState (vctDynamicVector< double > &p, vctDynamicVector< double > &pd, vctDynamicVector< double > &pdd)
 
void InitialState (vctFixedSizeVector< double, 3 > &p, double &v, double &vd)
 
void FinalState (vctFixedSizeVector< double, 3 > &p, double &v, double &vd)
 
- Public Member Functions inherited from robFunction
 robFunction (void)
 
 robFunction (double startTime, double stopTime)
 
virtual ~robFunction ()
 
void Set (double startTime, double stopTime)
 Set start and stop time. More...
 
virtual double & StartTime (void)
 Return start time. More...
 
virtual double & StopTime (void)
 Return stop time. More...
 
virtual double Duration (void) const
 Return duration. More...
 

Additional Inherited Members

- Protected Attributes inherited from robFunctionRn
vctDynamicVector< double > y1
 
vctDynamicVector< double > y1d
 
vctDynamicVector< double > y1dd
 
vctDynamicVector< double > y2
 
vctDynamicVector< double > y2d
 
vctDynamicVector< double > y2dd
 
- Protected Attributes inherited from robFunction
double t1
 
double t2
 

Constructor & Destructor Documentation

robQuintic::robQuintic ( void  )

Default constructor

robQuintic::robQuintic ( double  t1,
const vctFixedSizeVector< double, 3 > &  y1,
const vctFixedSizeVector< double, 3 > &  y1d,
const vctFixedSizeVector< double, 3 > &  y1dd,
double  t2,
const vctFixedSizeVector< double, 3 > &  y2,
const vctFixedSizeVector< double, 3 > &  y2d,
const vctFixedSizeVector< double, 3 > &  y2dd 
)

Define a 3D quintic function $Q: R^1\rightarrow R^3 $.

Define a 5th order polynomial passing throuh $(t_1,\mathbf{y}_1)$ and $(t_2,\mathbf{y}_2)$. The final time $t_2$ is determined by the maximum velocities. The function is bounded by $[t_1, t_2]$.

Parameters
t1The initial time
y1The value $\mathbf{y}_1 = Q(t_1)$
y1dThe value $\mathbf{y}'_1 = Q(t_1)$
y1ddThe value $\mathbf{y}''_1 = Q(t_1)$
t2The final time
y2The value $\mathbf{y}_2 = Q(t_2)$
y2dThe value $\mathbf{y}'_2 = Q(t_2)$
y2ddThe value $\mathbf{y}''_2 = Q(t_2)$
robQuintic::robQuintic ( double  t1,
const vctDynamicVector< double > &  y1,
const vctDynamicVector< double > &  y1d,
const vctDynamicVector< double > &  y1dd,
double  t2,
const vctDynamicVector< double > &  y2,
const vctDynamicVector< double > &  y2d,
const vctDynamicVector< double > &  y2dd 
)

Define a N quintic functions $Q: R^1\rightarrow R^N $.

Define a N 5th order polynomials passing throuh $(t_1,{y}_1^i)$ and $(t_2,{y}_2^i)$. The final time $t_2$ is determined by the maximum velocities. The function is bounded by $[t_1, t_2]$.

Parameters
t1The initial time
y1The value $\mathbf{y}_1 = Q(t_1)$
y1dThe value $\mathbf{y}'_1 = Q(t_1)$
y1ddThe value $\mathbf{y}''_1 = Q(t_1)$
t2The final time
y2The value $\mathbf{y}_2 = Q(t_2)$
y2dThe value $\mathbf{y}'_2 = Q(t_2)$
y2ddThe value $\mathbf{y}''_2 = Q(t_2)$
virtual robQuintic::~robQuintic ( )
inlinevirtual

Member Function Documentation

void robQuintic::Blend ( robFunction function,
const vctDynamicVector< double > &  qdmax,
const vctDynamicVector< double > &  qddmax 
)
virtual

Implements robFunctionRn.

void robQuintic::Blend ( robFunction ,
double  ,
double   
)
virtual

Implements robFunctionRn.

void robQuintic::Evaluate ( double  t,
vctFixedSizeVector< double, 3 > &  y,
vctFixedSizeVector< double, 3 > &  yd,
vctFixedSizeVector< double, 3 > &  ydd 
)
virtual

Reimplemented from robFunctionRn.

void robQuintic::Evaluate ( double  t,
vctDynamicVector< double > &  y,
vctDynamicVector< double > &  yd,
vctDynamicVector< double > &  ydd 
)
virtual

Reimplemented from robFunctionRn.

void robQuintic::Set ( double  t1,
const vctDynamicVector< double > &  y1,
const vctDynamicVector< double > &  y1d,
const vctDynamicVector< double > &  y1dd,
double  t2,
const vctDynamicVector< double > &  y2,
const vctDynamicVector< double > &  y2d,
const vctDynamicVector< double > &  y2dd 
)

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