Cheetah Software
1.0
|
Enumerations | |
enum | JointType { JointType::Prismatic, JointType::Revolute, JointType::FloatingBase, JointType::Nothing } |
Functions | |
template<typename T > | |
SXform< T > | spatialRotation (CoordinateAxis axis, T theta) |
template<typename T > | |
auto | motionCrossMatrix (const Eigen::MatrixBase< T > &v) |
template<typename T > | |
auto | forceCrossMatrix (const Eigen::MatrixBase< T > &v) |
template<typename T > | |
auto | motionCrossProduct (const Eigen::MatrixBase< T > &a, const Eigen::MatrixBase< T > &b) |
template<typename T > | |
auto | forceCrossProduct (const Eigen::MatrixBase< T > &a, const Eigen::MatrixBase< T > &b) |
template<typename T > | |
auto | sxformToHomogeneous (const Eigen::MatrixBase< T > &X) |
template<typename T > | |
auto | homogeneousToSXform (const Eigen::MatrixBase< T > &H) |
template<typename T , typename T2 > | |
auto | createSXform (const Eigen::MatrixBase< T > &R, const Eigen::MatrixBase< T2 > &r) |
template<typename T > | |
auto | rotationFromSXform (const Eigen::MatrixBase< T > &X) |
template<typename T > | |
auto | translationFromSXform (const Eigen::MatrixBase< T > &X) |
template<typename T > | |
auto | invertSXform (const Eigen::MatrixBase< T > &X) |
template<typename T > | |
SVec< T > | jointMotionSubspace (JointType joint, CoordinateAxis axis) |
template<typename T > | |
Mat6< T > | jointXform (JointType joint, CoordinateAxis axis, T q) |
template<typename T > | |
Mat3< typename T::Scalar > | rotInertiaOfBox (typename T::Scalar mass, const Eigen::MatrixBase< T > &dims) |
template<typename T , typename T2 > | |
auto | spatialToLinearVelocity (const Eigen::MatrixBase< T > &v, const Eigen::MatrixBase< T2 > &x) |
template<typename T > | |
auto | spatialToAngularVelocity (const Eigen::MatrixBase< T > &v) |
template<typename T , typename T2 > | |
auto | spatialToLinearAcceleration (const Eigen::MatrixBase< T > &a, const Eigen::MatrixBase< T2 > &v) |
template<typename T , typename T2 , typename T3 > | |
auto | spatialToLinearAcceleration (const Eigen::MatrixBase< T > &a, const Eigen::MatrixBase< T2 > &v, const Eigen::MatrixBase< T3 > &x) |
template<typename T , typename T2 > | |
auto | sXFormPoint (const Eigen::MatrixBase< T > &X, const Eigen::MatrixBase< T2 > &p) |
template<typename T , typename T2 > | |
auto | forceToSpatialForce (const Eigen::MatrixBase< T > &f, const Eigen::MatrixBase< T2 > &p) |
|
strong |
auto spatial::createSXform | ( | const Eigen::MatrixBase< T > & | R, |
const Eigen::MatrixBase< T2 > & | r | ||
) |
Create spatial coordinate transformation from rotation and translation
Definition at line 140 of file spatial.h.
References ori::vectorToSkewMat(), and ori::X.
auto spatial::forceCrossMatrix | ( | const Eigen::MatrixBase< T > & | v | ) |
auto spatial::forceCrossProduct | ( | const Eigen::MatrixBase< T > & | a, |
const Eigen::MatrixBase< T > & | b | ||
) |
auto spatial::forceToSpatialForce | ( | const Eigen::MatrixBase< T > & | f, |
const Eigen::MatrixBase< T2 > & | p | ||
) |
auto spatial::homogeneousToSXform | ( | const Eigen::MatrixBase< T > & | H | ) |
Convert a homogeneous coordinate transformation to a spatial one
Definition at line 124 of file spatial.h.
References ori::vectorToSkewMat(), and ori::X.
auto spatial::invertSXform | ( | const Eigen::MatrixBase< T > & | X | ) |
Invert a spatial transformation (much faster than matrix inverse)
Definition at line 181 of file spatial.h.
References createSXform(), ori::matToSkewVec(), and rotationFromSXform().
SVec<T> spatial::jointMotionSubspace | ( | JointType | joint, |
CoordinateAxis | axis | ||
) |
Mat6<T> spatial::jointXform | ( | JointType | joint, |
CoordinateAxis | axis, | ||
T | q | ||
) |
Compute joint transformation
Definition at line 219 of file spatial.h.
References createSXform(), Prismatic, Revolute, spatialRotation(), and ori::X.
auto spatial::motionCrossMatrix | ( | const Eigen::MatrixBase< T > & | v | ) |
auto spatial::motionCrossProduct | ( | const Eigen::MatrixBase< T > & | a, |
const Eigen::MatrixBase< T > & | b | ||
) |
auto spatial::rotationFromSXform | ( | const Eigen::MatrixBase< T > & | X | ) |
Mat3<typename T::Scalar> spatial::rotInertiaOfBox | ( | typename T::Scalar | mass, |
const Eigen::MatrixBase< T > & | dims | ||
) |
SXform<T> spatial::spatialRotation | ( | CoordinateAxis | axis, |
T | theta | ||
) |
Calculate the spatial coordinate transform from A to B where B is rotate by theta about axis.
Definition at line 28 of file spatial.h.
References ori::coordinateRotation(), and ori::X.
auto spatial::spatialToAngularVelocity | ( | const Eigen::MatrixBase< T > & | v | ) |
auto spatial::spatialToLinearAcceleration | ( | const Eigen::MatrixBase< T > & | a, |
const Eigen::MatrixBase< T2 > & | v | ||
) |
auto spatial::spatialToLinearAcceleration | ( | const Eigen::MatrixBase< T > & | a, |
const Eigen::MatrixBase< T2 > & | v, | ||
const Eigen::MatrixBase< T3 > & | x | ||
) |
Compute the classical lienear acceleration of a frame given its spatial acceleration and velocity
Definition at line 307 of file spatial.h.
References spatialToLinearVelocity().
auto spatial::spatialToLinearVelocity | ( | const Eigen::MatrixBase< T > & | v, |
const Eigen::MatrixBase< T2 > & | x | ||
) |
auto spatial::sXFormPoint | ( | const Eigen::MatrixBase< T > & | X, |
const Eigen::MatrixBase< T2 > & | p | ||
) |
Apply spatial transformation to a point.
Definition at line 329 of file spatial.h.
References rotationFromSXform(), and translationFromSXform().
auto spatial::sxformToHomogeneous | ( | const Eigen::MatrixBase< T > & | X | ) |
Convert a spatial transform to a homogeneous coordinate transformation
Definition at line 108 of file spatial.h.
References ori::matToSkewVec().
auto spatial::translationFromSXform | ( | const Eigen::MatrixBase< T > & | X | ) |
Get translation vector from spatial transformation
Definition at line 168 of file spatial.h.
References ori::matToSkewVec(), and rotationFromSXform().