humoto
Classes | Functions
humoto::rigidbody Namespace Reference

Detailed Description

Namespace containing definitions related to rigid bodies and their motions.

Classes

class  CubicPolynomial1D
 Class interpolating simple 1D cubic polynomial between two 1D points. Use this class to build more complex trajectories. More...
 
class  EulerAngles
 Types of Euler angles. More...
 
class  PointMassState
 Class that groups together parmeters related to a robot foot. More...
 
class  RigidBodyPose
 
class  RigidBodyState
 Class that groups together parameters related to a robot foot. More...
 
class  RotaryState
 Class that groups together parameters related to a robot foot. More...
 
class  TrajectoryEvaluationType
 Type of interpolated trajectory. More...
 
class  TripleIntegrator
 Triple integrator class Class supports arbitrary number of integrators in the system. More...
 

Functions

etools::Vector3 convertEulerAngles (const etools::Vector3 &euler_angles, const EulerAngles::Type euler_angles_type_from, const EulerAngles::Type euler_angles_type_to)
 Convert Euler angles to a different set ofEuler angles. More...
 
etools::Matrix3 convertEulerAnglesToMatrix (const etools::Vector3 &euler_angles, const EulerAngles::Type euler_angles_type)
 Convert rotation matrix to Euler angles. More...
 
etools::Vector3 convertMatrixToEulerAngles (const etools::Matrix3 &rotation_matrix, const EulerAngles::Type euler_angles_type)
 Convert rotation matrix to Euler angles. More...
 
etools::Matrix3 getEulerRatesToAngularVelocityTransform (const etools::Vector3 &euler_angles, const EulerAngles::Type euler_angles_type)
 Returns matrix M such that w = M * de. More...
 
etools::Matrix3 getRotationError (const etools::Matrix3 &current, const etools::Matrix3 &reference)
 
etools::Vector3 getRotationErrorAngleAxis (const etools::Matrix3 &current, const etools::Matrix3 &reference)
 
etools::Matrix3 integrateAngularVelocity (const etools::Matrix3 &orientation, const etools::Vector3 &angular_velocity, const double dt)
 Integrate angular velocity to obtain orientation matrix. Simple version. More...
 
etools::Matrix3 integrateAngularVelocityRodrigues (const etools::Matrix3 &orientation, const etools::Vector3 &angular_velocity, const double dt, const double tolerance=humoto::g_generic_tolerance)
 Integrate angular velocity to obtain orientation matrix. Use Rodrigues formula. More...
 

Function Documentation

◆ convertEulerAngles()

etools::Vector3 humoto::rigidbody::convertEulerAngles ( const etools::Vector3 &  euler_angles,
const EulerAngles::Type  euler_angles_type_from,
const EulerAngles::Type  euler_angles_type_to 
)
inline

Convert Euler angles to a different set ofEuler angles.

Parameters
[in]euler_angles
[in]euler_angles_type_from
[in]euler_angles_type_to
Returns
Euler angles

Definition at line 107 of file rotary_state.h.

◆ convertEulerAnglesToMatrix()

etools::Matrix3 humoto::rigidbody::convertEulerAnglesToMatrix ( const etools::Vector3 &  euler_angles,
const EulerAngles::Type  euler_angles_type 
)
inline

Convert rotation matrix to Euler angles.

Parameters
[in]euler_angles
[in]euler_angles_type
Returns
Euler angles

Definition at line 71 of file rotary_state.h.

◆ convertMatrixToEulerAngles()

etools::Vector3 humoto::rigidbody::convertMatrixToEulerAngles ( const etools::Matrix3 rotation_matrix,
const EulerAngles::Type  euler_angles_type 
)
inline

Convert rotation matrix to Euler angles.

Parameters
[in]rotation_matrix
[in]euler_angles_type
Returns
Euler angles

Definition at line 41 of file rotary_state.h.

◆ getEulerRatesToAngularVelocityTransform()

etools::Matrix3 humoto::rigidbody::getEulerRatesToAngularVelocityTransform ( const etools::Vector3 &  euler_angles,
const EulerAngles::Type  euler_angles_type 
)
inline

Returns matrix M such that w = M * de.

Parameters
[in]euler_anglescurrent orientation (Euler angles)
[in]euler_angles_typeeuler angles type
Returns
3x3 matrix

Definition at line 142 of file rotary_state.h.

◆ getRotationError()

etools::Matrix3 humoto::rigidbody::getRotationError ( const etools::Matrix3 current,
const etools::Matrix3 reference 
)
inline

Definition at line 116 of file rotary_state.h.

◆ getRotationErrorAngleAxis()

etools::Vector3 humoto::rigidbody::getRotationErrorAngleAxis ( const etools::Matrix3 current,
const etools::Matrix3 reference 
)
inline

Definition at line 123 of file rotary_state.h.

◆ integrateAngularVelocity()

etools::Matrix3 humoto::rigidbody::integrateAngularVelocity ( const etools::Matrix3 orientation,
const etools::Vector3 &  angular_velocity,
const double  dt 
)
inline

Integrate angular velocity to obtain orientation matrix. Simple version.

Parameters
[in]orientation
[in]angular_velocity
[in]dt
Returns
new orientation matrix

Definition at line 176 of file rotary_state.h.

◆ integrateAngularVelocityRodrigues()

etools::Matrix3 humoto::rigidbody::integrateAngularVelocityRodrigues ( const etools::Matrix3 orientation,
const etools::Vector3 &  angular_velocity,
const double  dt,
const double  tolerance = humoto::g_generic_tolerance 
)
inline

Integrate angular velocity to obtain orientation matrix. Use Rodrigues formula.

Parameters
[in]orientation
[in]angular_velocity
[in]dt
[in]tolerance
Returns
new orientation matrix

Definition at line 197 of file rotary_state.h.