TurtleQUAD 2.0
Loading...
Searching...
No Matches
spatial.hpp File Reference
#include <Eigen/Dense>
#include <cmath>

Go to the source code of this file.

Typedefs

typedef Matrix< double, 6, 1 > Eigen::Vector6d
typedef Matrix< double, 6, 6 > Eigen::Matrix6d

Functions

Eigen::Vector6d screwAxis (const Eigen::Vector3d &q, const Eigen::Vector3d &s, const double h=0.0)
 Create screw axis.
template<int n>
Eigen::Matrix< double, 6, n > screwAxis (const Eigen::Matrix< double, 3, n > &q, const Eigen::Matrix< double, 3, n > &s, const Eigen::Vector< double, n > &h=Eigen::Vector< double, n >::Zero())
 Create screw axis list.
Eigen::Vector6d pointsToScrew (const Eigen::Vector3d &p1, const Eigen::Vector3d &p2)
 Create screw axis from points.
Eigen::Matrix6d makeG (const Eigen::Matrix3d &I, const double &m)
 Create spatial inertia matrix.
double cubicTimeScaling (const double t, const double dt)
 Apply cubic time scaling.
double quinticTimeScaling (const double t, const double dt)
 Apply quintic time scaling.

Function Documentation

◆ cubicTimeScaling()

double cubicTimeScaling ( const double t,
const double dt )
inline

Apply cubic time scaling.

Parameters
[in]tElapsed time (0 - dt)
[in]dtTotal time duration
Returns
position along cubic spline

◆ makeG()

Eigen::Matrix6d makeG ( const Eigen::Matrix3d & I,
const double & m )
inline

Create spatial inertia matrix.

Parameters
[in]I3x3 inertia matrix
[in]mmass
Returns
6x6 spatial inertia matrix

◆ pointsToScrew()

Eigen::Vector6d pointsToScrew ( const Eigen::Vector3d & p1,
const Eigen::Vector3d & p2 )
inline

Create screw axis from points.

Create a screw axis from point p1 to point p2

Parameters
[in]p13-vector first point
[in]p23-vector second point
Returns
6-vector screw axis

◆ quinticTimeScaling()

double quinticTimeScaling ( const double t,
const double dt )
inline

Apply quintic time scaling.

Parameters
[in]tElapsed time (0 - dt)
[in]dtTotal time duration
Returns
position along quintic spline

◆ screwAxis() [1/2]

template<int n>
Eigen::Matrix< double, 6, n > screwAxis ( const Eigen::Matrix< double, 3, n > & q,
const Eigen::Matrix< double, 3, n > & s,
const Eigen::Vector< double, n > & h = Eigen::Vector<double, n>::Zero() )
inline

Create screw axis list.

Parameters
[in]q3-vector screw axis
[in]s3-vector screw offset
[in]hScrew pitch
Returns
6-vector screw axis

◆ screwAxis() [2/2]

Eigen::Vector6d screwAxis ( const Eigen::Vector3d & q,
const Eigen::Vector3d & s,
const double h = 0.0 )
inline

Create screw axis.

Parameters
[in]q3-vector screw axis
[in]s3-vector screw offset
[in]hScrew pitch
Returns
6-vector screw axis