Kindr
Kinematics and Dynamics for Robotics
kindr::RotationMatrixDiff< PrimType_ > Class Template Reference

Time derivative of a rotation matrix. More...

#include <RotationDiff.hpp>

Inheritance diagram for kindr::RotationMatrixDiff< PrimType_ >:
Inheritance graph

Public Types

typedef Base Implementation
 The implementation type. The implementation type is always an Eigen object. More...
 
typedef Base Matrix3x3
 
typedef PrimType_ Scalar
 The primitive type. Float/Double. More...
 

Public Member Functions

 RotationMatrixDiff ()
 
 RotationMatrixDiff (const Base &other)
 Constructor using Eigen::Matrix<Scalar, 3, 3>. More...
 
 RotationMatrixDiff (Scalar r11, Scalar r12, Scalar r13, Scalar r21, Scalar r22, Scalar r23, Scalar r31, Scalar r32, Scalar r33)
 Constructor using nine scalars. More...
 
template<typename RotationDerived_ , typename OtherDerived_ >
 RotationMatrixDiff (const RotationBase< RotationDerived_ > &rotation, const RotationDiffBase< OtherDerived_ > &other)
 Constructor using a time derivative with a different parameterization. More...
 
template<typename OtherDerived_ , typename RotationDerived_ >
OtherDerived_ cast (const RotationBase< RotationDerived_ > &rotation) const
 Cast to another representation of the time derivative of a rotation. More...
 
ImplementationtoImplementation ()
 Cast to the implementation type. More...
 
const ImplementationtoImplementation () const
 Cast to the implementation type. More...
 
const Matrix3x3matrix () const
 Reading access to the time derivative of the rotation matrix. More...
 
Matrix3x3matrix ()
 Writing access to the time derivative of the rotation matrix. More...
 
RotationMatrixDiffsetZero ()
 Sets all time derivatives to zero. More...
 
- Public Member Functions inherited from kindr::RotationDiffBase< RotationMatrixDiff< PrimType_ > >
 RotationDiffBase ()=default
 Default constructor. More...
 
 RotationDiffBase (const RotationMatrixDiff< PrimType_ > &)=delete
 Constructor from derived time derivative of a rotation. More...
 
 operator RotationMatrixDiff< PrimType_ > & ()
 Gets the derived time derivative of a rotation. (only for advanced users) More...
 
 operator const RotationMatrixDiff< PrimType_ > & () const
 Gets the derived time derivative of a rotation. (only for advanced users) More...
 
const RotationMatrixDiff< PrimType_ > & derived () const
 Gets the derived time derivative of a rotation. (only for advanced users) More...
 
RotationMatrixDiff< PrimType_ > & setZero ()
 Sets the time derivative of a rotation to zero. More...
 
RotationMatrixDiff< PrimType_ > operator+ (const RotationDiffBase< OtherDerived_ > &other) const
 Addition of two time derivatives. More...
 
RotationMatrixDiff< PrimType_ > operator- (const RotationDiffBase< OtherDerived_ > &other) const
 Subtraction of two time derivatives. More...
 
RotationMatrixDiff< PrimType_ > & operator+= (const RotationDiffBase< OtherDerived_ > &other)
 Addition and assignment. More...
 
RotationMatrixDiff< PrimType_ > & operator-= (const RotationDiffBase< OtherDerived_ > &other)
 Subtraction and assignment. More...
 

Private Types

typedef Eigen::Matrix< PrimType_, 3, 3 > Base
 The base type. More...
 

Friends

std::ostream & operator<< (std::ostream &out, const RotationMatrixDiff &diff)
 Used for printing the object with std::cout. More...
 

Detailed Description

template<typename PrimType_>
class kindr::RotationMatrixDiff< PrimType_ >

Time derivative of a rotation matrix.

This class implements the time derivative of a rotation matrix using a Eigen::Matrix<Scalar, 3, 3> as data storage.

Template Parameters
PrimType_Primitive data type of the coordinates.

Definition at line 47 of file RotationDiff.hpp.

Member Typedef Documentation

◆ Base

template<typename PrimType_ >
typedef Eigen::Matrix<PrimType_, 3, 3> kindr::RotationMatrixDiff< PrimType_ >::Base
private

The base type.

Definition at line 55 of file RotationMatrixDiff.hpp.

◆ Implementation

template<typename PrimType_ >
typedef Base kindr::RotationMatrixDiff< PrimType_ >::Implementation

The implementation type. The implementation type is always an Eigen object.

Definition at line 61 of file RotationMatrixDiff.hpp.

◆ Matrix3x3

template<typename PrimType_ >
typedef Base kindr::RotationMatrixDiff< PrimType_ >::Matrix3x3

Definition at line 63 of file RotationMatrixDiff.hpp.

◆ Scalar

template<typename PrimType_ >
typedef PrimType_ kindr::RotationMatrixDiff< PrimType_ >::Scalar

The primitive type. Float/Double.

Definition at line 69 of file RotationMatrixDiff.hpp.

Constructor & Destructor Documentation

◆ RotationMatrixDiff() [1/4]

template<typename PrimType_ >
kindr::RotationMatrixDiff< PrimType_ >::RotationMatrixDiff ( )
inline

Definition at line 71 of file RotationMatrixDiff.hpp.

◆ RotationMatrixDiff() [2/4]

template<typename PrimType_ >
kindr::RotationMatrixDiff< PrimType_ >::RotationMatrixDiff ( const Base other)
inlineexplicit

Constructor using Eigen::Matrix<Scalar, 3, 3>.

Parameters
otherEigen::Matrix<Scalar, 3, 3>

Definition at line 78 of file RotationMatrixDiff.hpp.

◆ RotationMatrixDiff() [3/4]

template<typename PrimType_ >
kindr::RotationMatrixDiff< PrimType_ >::RotationMatrixDiff ( Scalar  r11,
Scalar  r12,
Scalar  r13,
Scalar  r21,
Scalar  r22,
Scalar  r23,
Scalar  r31,
Scalar  r32,
Scalar  r33 
)
inline

Constructor using nine scalars.

Parameters
r11entry in row 1, col 1
r12entry in row 1, col 2
r13entry in row 1, col 3
r21entry in row 2, col 1
r22entry in row 2, col 2
r23entry in row 2, col 3
r31entry in row 3, col 1
r32entry in row 3, col 2
r33entry in row 3, col 3

Definition at line 93 of file RotationMatrixDiff.hpp.

◆ RotationMatrixDiff() [4/4]

template<typename PrimType_ >
template<typename RotationDerived_ , typename OtherDerived_ >
kindr::RotationMatrixDiff< PrimType_ >::RotationMatrixDiff ( const RotationBase< RotationDerived_ > &  rotation,
const RotationDiffBase< OtherDerived_ > &  other 
)
inlineexplicit

Constructor using a time derivative with a different parameterization.

Parameters
rotationrotation
otherother time derivative

Definition at line 105 of file RotationMatrixDiff.hpp.

Member Function Documentation

◆ cast()

template<typename PrimType_ >
template<typename OtherDerived_ , typename RotationDerived_ >
OtherDerived_ kindr::RotationMatrixDiff< PrimType_ >::cast ( const RotationBase< RotationDerived_ > &  rotation) const
inline

Cast to another representation of the time derivative of a rotation.

Parameters
otherother rotation
Returns
reference

Definition at line 115 of file RotationMatrixDiff.hpp.

◆ matrix() [1/2]

template<typename PrimType_ >
const Matrix3x3& kindr::RotationMatrixDiff< PrimType_ >::matrix ( ) const
inline

Reading access to the time derivative of the rotation matrix.

Returns
rotation matrix (matrix) with reading access

Definition at line 136 of file RotationMatrixDiff.hpp.

◆ matrix() [2/2]

template<typename PrimType_ >
Matrix3x3& kindr::RotationMatrixDiff< PrimType_ >::matrix ( )
inline

Writing access to the time derivative of the rotation matrix.

Returns
rotation matrix (matrix) with writing access

Definition at line 143 of file RotationMatrixDiff.hpp.

◆ setZero()

template<typename PrimType_ >
RotationMatrixDiff& kindr::RotationMatrixDiff< PrimType_ >::setZero ( )
inline

Sets all time derivatives to zero.

Returns
reference

Definition at line 150 of file RotationMatrixDiff.hpp.

◆ toImplementation() [1/2]

template<typename PrimType_ >
Implementation& kindr::RotationMatrixDiff< PrimType_ >::toImplementation ( )
inline

Cast to the implementation type.

Returns
the implementation (recommended only for advanced users)

Definition at line 122 of file RotationMatrixDiff.hpp.

◆ toImplementation() [2/2]

template<typename PrimType_ >
const Implementation& kindr::RotationMatrixDiff< PrimType_ >::toImplementation ( ) const
inline

Cast to the implementation type.

Returns
the implementation (recommended only for advanced users)

Definition at line 129 of file RotationMatrixDiff.hpp.

Friends And Related Function Documentation

◆ operator<<

template<typename PrimType_ >
std::ostream& operator<< ( std::ostream &  out,
const RotationMatrixDiff< PrimType_ > &  diff 
)
friend

Used for printing the object with std::cout.

Returns
std::stream object

Definition at line 158 of file RotationMatrixDiff.hpp.


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