Motorcortex Math  version: 2.1.0
mcx::math::Rotation Class Reference

Public Member Functions

 Rotation (const Matrix3x3 &rot_matrix)
 
 Rotation (const CartPose6 &cart_pose6)
 
 Rotation (const Vector3D &normal_vector, const Vector3D &slide_vector, const Vector3D &approach_vector)
 
 Rotation (double psi_Z, double theta_Y, double phi_X)
 
 Rotation (Vector4D &quaternion)
 
 Rotation (double xx, double xy, double xz, double yx, double yy, double yz, double zx, double zy, double zz)
 
 Rotation (const Vector3D &axis, double angle)
 
 Rotation (const Rotation &rotation)
 
void set (const Matrix3x3 &rot_matrix)
 
void set (const CartPose6 &cart_pose6)
 
void set (const Vector3D &normal_vector, const Vector3D &slide_vector, const Vector3D &approach_vector)
 
void set (double psi_Z, double theta_Y, double phi_X)
 
void set (double xx, double xy, double xz, double yx, double yy, double yz, double zx, double zy, double zz)
 
void set (const Vector3D &axis, double angle)
 
void set (const Rotation &rotation)
 
void set (const Vector4D &quaternion)
 
void setPsi (double psi_Z)
 
void setTheta (double theta_Y)
 
void setPhi (double phi_X)
 
double getPsi () const
 
double getTheta () const
 
double getPhi () const
 
Vector3D UnitX () const
 
Vector3D UnitY () const
 
Vector3D UnitZ () const
 
void getAxisAngleForm (Vector3D &axis, double &angle, double error_tolerance=0.000002) const
 
double getElement (unsigned int i, unsigned int j) const
 
Matrix3x3 getData () const
 
Matrix3x3 getMatrix () const
 
Quaternion getQuaternion () const
 
Matrix3x3 getEulerRatesToCartesianTwistMatrix () const
 
Vector3D eulerRatesToCartesianTwist (double yaw_dot, double pitch_dot, double roll_dot) const
 
Vector3D eulerRatesToCartesianTwist (Vector3D eulerRatesYPR) const
 
Vector3D cartesianTwistToEulerRates (Vector3D twist) const
 
Vector3D eulerAccelToPoisson (double yaw_dot, double pitch_dot, double roll_dot, double yaw_ddot, double pitch_ddot, double roll_ddot)
 
Vector3D eulerAccelToPoisson (Vector3D eulerRatesYPR, Vector3D eulerAccelYPR)
 
void GetRPY (double &roll, double &pitch, double &yaw, double error_tolerance=0.000002) const
 
void GetEulerZYX (double &psi_Z, double &theta_Y, double &phi_X, double error_tolerance=1E-12) const
 
void RotateAboutX (double angle)
 
void RotateAboutY (double angle)
 
void RotateAboutZ (double angle)
 
void RotateX (double angle)
 
void RotateY (double angle)
 
void RotateZ (double angle)
 
Rotationoperator= (const Rotation &rotation)
 
 Rotation (const Matrix3x3 &rot_matrix)
 
 Rotation (const CartPose6 &cart_pose6)
 
 Rotation (const Vector3D &normal_vector, const Vector3D &slide_vector, const Vector3D &approach_vector)
 
 Rotation (double psi_Z, double theta_Y, double phi_X)
 
 Rotation (Vector4D &quaternion)
 
 Rotation (double xx, double xy, double xz, double yx, double yy, double yz, double zx, double zy, double zz)
 
 Rotation (const Vector3D &axis, double angle)
 
 Rotation (const Rotation &rotation)
 
void set (const Matrix3x3 &rot_matrix)
 
void set (const CartPose6 &cart_pose6)
 
void set (const Vector3D &normal_vector, const Vector3D &slide_vector, const Vector3D &approach_vector)
 
void set (double psi_Z, double theta_Y, double phi_X)
 
void set (double xx, double xy, double xz, double yx, double yy, double yz, double zx, double zy, double zz)
 
void set (const Vector3D &axis, double angle)
 
void set (const Rotation &rotation)
 
void set (const Vector4D &quaternion)
 
void setPsi (double psi_Z)
 
void setTheta (double theta_Y)
 
void setPhi (double phi_X)
 
double getPsi () const
 
double getTheta () const
 
double getPhi () const
 
Vector3D UnitX () const
 
Vector3D UnitY () const
 
Vector3D UnitZ () const
 
void getAxisAngleForm (Vector3D &axis, double &angle, double error_tolerance=0.000002) const
 
double getElement (unsigned int i, unsigned int j) const
 
Matrix3x3 getData () const
 
Matrix3x3 getMatrix () const
 
Quaternion getQuaternion () const
 
Matrix3x3 getEulerRatesToCartesianTwistMatrix () const
 
Vector3D eulerRatesToCartesianTwist (double yaw_dot, double pitch_dot, double roll_dot) const
 
Vector3D eulerRatesToCartesianTwist (Vector3D eulerRatesYPR) const
 
Vector3D cartesianTwistToEulerRates (Vector3D twist) const
 
Vector3D eulerAccelToPoisson (double yaw_dot, double pitch_dot, double roll_dot, double yaw_ddot, double pitch_ddot, double roll_ddot)
 
Vector3D eulerAccelToPoisson (Vector3D eulerRatesYPR, Vector3D eulerAccelYPR)
 
void GetRPY (double &roll, double &pitch, double &yaw, double error_tolerance=0.000002) const
 
void GetEulerZYX (double &psi_Z, double &theta_Y, double &phi_X, double error_tolerance=1E-12) const
 
void RotateAboutX (double angle)
 
void RotateAboutY (double angle)
 
void RotateAboutZ (double angle)
 
void RotateX (double angle)
 
void RotateY (double angle)
 
void RotateZ (double angle)
 
Rotationoperator= (const Rotation &rotation)
 

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