Ravelin
|
Class for spatial arithmetic. More...
#include <SpatialArithmetic.h>
Static Public Member Functions | |
template<class X > | |
static void | from_matrix (const X &m, std::vector< SVELOCITY > &w) |
Converts a matrix (type X) to a vector of spatial axes. | |
template<class X > | |
static X & | to_matrix (const std::vector< SVELOCITY > &w, X &m) |
Converts an STL vector of axes to a matrix (type X) | |
template<class X > | |
static X & | to_matrix (const std::vector< SFORCE > &w, X &m) |
Converts an STL vector of forces to a matrix (type X) | |
template<class X > | |
static X & | to_matrix (const std::vector< SMOMENTUM > &w, X &m) |
Converts an STL vector of momenta to a matrix (type X) | |
template<class X > | |
static X & | spatial_transpose_to_matrix (const std::vector< SMOMENTUM > &w, X &m) |
Converts an STL vector of momenta to a matrix (type X) | |
template<class X > | |
static X & | transpose_to_matrix (const std::vector< SVELOCITY > &t, X &m) |
Converts an STL vector of spatial velocities to a force matrix (type X) | |
template<class X > | |
static X & | transpose_mult (const std::vector< SVELOCITY > &t, const std::vector< SFORCE > &w, X &result) |
Computes the "spatial dot product" between a vector of velocities and a vector of forces and returns the result in the matrix container (X) | |
template<class X > | |
static X & | transpose_mult (const std::vector< SVELOCITY > &t, const SFORCE &w, X &result) |
Computes the "spatial dot product" between a vector of velocities and a force and returns the result in the matrix container (X) | |
template<class X > | |
static X & | transpose_mult (const std::vector< SVELOCITY > &t, const SMOMENTUM &w, X &result) |
Computes the "spatial dot product" between a vector of velocities and a momentum and returns the result in the matrix container (X) | |
template<class X > | |
static X & | transpose_mult (const std::vector< SVELOCITY > &t, const std::vector< SMOMENTUM > &w, X &result) |
Computes the "spatial dot product" between a vector of axes and a vector of momenta and returns the result in the matrix container (X) | |
template<class Y , class X > | |
static X & | transpose_mult (const std::vector< SVELOCITY > &t, const Y &y, X &result) |
Computes the "spatial dot product" between a vector of axes and a matrix or vector and returns the result in the matrix container (X) | |
template<class X > | |
static X & | transpose_mult (const std::vector< SMOMENTUM > &w, const SVELOCITY &t, X &result) |
Computes the "spatial dot product" between a vector of momenta and an axis and returns the result in the matrix container (X) | |
static MATRIXN & | mult (const std::vector< SMOMENTUM > &Is, const MATRIXN &m, MATRIXN &result) |
static VECTORN & | mult (const std::vector< SMOMENTUM > &Is, const VECTORN &v, VECTORN &result) |
static std::vector< SMOMENTUM > & | mult (const SPATIAL_AB_INERTIA &I, const std::vector< SVELOCITY > &s, std::vector< SMOMENTUM > &result) |
static MATRIXN & | mult (const SPATIAL_AB_INERTIA &I, const std::vector< SVELOCITY > &s, MATRIXN &result) |
Multiplies a spatial inertia by a vector of spatial axes. | |
static std::vector< SMOMENTUM > & | mult (const SPATIAL_RB_INERTIA &I, const std::vector< SVELOCITY > &s, std::vector< SMOMENTUM > &result) |
static MATRIXN & | mult (const SPATIAL_RB_INERTIA &I, const std::vector< SVELOCITY > &s, MATRIXN &result) |
Multiplies a spatial inertia by a vector of spatial axes. | |
static VECTORN & | concat (const VECTORN &v, const SFORCE &w, VECTORN &result) |
Concates a vector with a force to make a new vector. | |
static VECTORN & | concat (const VECTORN &v, const SMOMENTUM &w, VECTORN &result) |
Concates a vector with a momentum to make a new vector. | |
static SVELOCITY | mult (const std::vector< SVELOCITY > &a, const VECTORN &v) |
static SACCEL | transform_accel (boost::shared_ptr< const POSE3 > target, const SACCEL &a) |
Special transformation of acceleration when moving aspect of pose accounted for elsewhere. | |
static std::vector< SACCEL > & | transform_accel (boost::shared_ptr< const POSE3 > target, const std::vector< SACCEL > &asrc, std::vector< SACCEL > &atgt) |
Special transformation of acceleration when moving aspect of pose accounted for elsewhere. | |
static void | transform_accel (boost::shared_ptr< const POSE3 > target, const SACCEL &w, const VECTOR3 &r, const MATRIX3 &E, SACCEL &result) |
transforms a spatial acceleration using precomputation without accounting for moving frames | |
Class for spatial arithmetic.