CD_Matrix::Matrix3x3T< T > Struct Template Reference

#include <sch/Matrix/SmallMatrix3x3T.h>

Public Member Functions

template<class Archive >
void serialize (Archive &ar, const unsigned int)
 
 Matrix3x3T ()
 
 Matrix3x3T (const T *const x)
 
 Matrix3x3T (const T &x)
 
 Matrix3x3T (const T x0, const T x1, const T x2, const T x3, const T x4, const T x5, const T x6, const T x7, const T x8)
 
 Matrix3x3T (const struct Matrix3x3T< T > &v)
 
Matrix3x3T< T > & operator= (const Matrix3x3T< T > &v)
 
template<typename T2 >
 Matrix3x3T (const struct Matrix3x3T< T2 > &v)
 
template<bool b>
 Matrix3x3T (const Vector3T< T, b > V1, const Vector3T< T, b > V2, const Vector3T< T, b > V3)
 
 Matrix3x3T (const QuaternionT< T > &q)
 
 Matrix3x3T (const T &q0, const T &q1, const T &q2, const T &q3)
 
template<bool b>
 Matrix3x3T (const T &angle, const Vector3T< T, b > &axis)
 
 Matrix3x3T (const T &roll, const T &pitch, const T &yaw)
 
void Set (const T x0, const T x1, const T x2, const T x3, const T x4, const T x5, const T x6, const T x7, const T x8)
 set from 9 scalar More...
 
template<bool b>
void Set (const T &angle, const Vector3T< T, b > &axis)
 
void Set (const T *const x)
 
void Set (const QuaternionT< T > &q)
 
void Set (const T &q0, const T &q1, const T &q2, const T &q3)
 
void Set (const T &yaw, const T &pitch, const T &roll)
 
T & operator[] (unsigned int i)
 
operator[] (unsigned int i) const
 
T & operator() (unsigned int i, unsigned int j)
 
const T & operator() (unsigned int i, unsigned int j) const
 
void setZero (void)
 
void setIdentity (void)
 
Matrix3x3T< T > operator+ (const struct Matrix3x3T< T > &B)
 
struct Matrix3x3T< T > operator- (const struct Matrix3x3T< T > &B)
 
void CeqthismulB (const Matrix3x3T< T > &B, Matrix3x3T< T > &C) const
 
Matrix3x3T< T > operator* (const double &r)
 
template<bool b>
Vector3T< T, b > operator* (const Vector3T< T, b > &v) const
 
template<bool b>
void CeqthismulB (Vector3T< T, b > &B, Vector3T< T, b > &C) const
 
Matrix3x3T< T > & TransposeIt ()
 
Matrix3x3T< T > Transpose () const
 
void Transpose (Matrix3x3T< T > &A) const
 
void Inversion (struct Matrix3x3T< T > &A) const
 
determinant () const
 
void Fill (T value)
 
bool IsIdentity ()
 
void operator+= (const Matrix3x3T< T > &B)
 
void operator-= (const Matrix3x3T< T > &B)
 
Matrix3x3T< T > operator* (const Matrix3x3T< T > &B) const
 Local matrix multiplication. More...
 
void operator*= (const Matrix3x3T< T > &B)
 
void operator*= (const T &t)
 

Public Attributes

m [9]
 

Friends

std::ostream & operator<< (std::ostream &os, Matrix3x3T< T > const &A)
 

Detailed Description

template<typename T>
struct CD_Matrix::Matrix3x3T< T >

Template to handle a 3x3 matrix

Constructor & Destructor Documentation

◆ Matrix3x3T() [1/11]

template<typename T >
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( )
inlineexplicit

Defaut constructor.

◆ Matrix3x3T() [2/11]

template<typename T >
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( const T *const  x)
inlineexplicit

Constructor from a pointer

◆ Matrix3x3T() [3/11]

template<typename T >
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( const T &  x)
inlineexplicit

Constructor from a scalar

◆ Matrix3x3T() [4/11]

template<typename T >
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( const T  x0,
const T  x1,
const T  x2,
const T  x3,
const T  x4,
const T  x5,
const T  x6,
const T  x7,
const T  x8 
)
inlineexplicit

Constructor from 9 scalar

◆ Matrix3x3T() [5/11]

template<typename T >
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( const struct Matrix3x3T< T > &  v)
inline

Copy constructor

◆ Matrix3x3T() [6/11]

template<typename T >
template<typename T2 >
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( const struct Matrix3x3T< T2 > &  v)
inline

Hybrid copy constructor

◆ Matrix3x3T() [7/11]

template<typename T >
template<bool b>
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( const Vector3T< T, b >  V1,
const Vector3T< T, b >  V2,
const Vector3T< T, b >  V3 
)
inlineexplicit

constructor taking three columns vector

◆ Matrix3x3T() [8/11]

template<typename T >
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( const QuaternionT< T > &  q)
inlineexplicit

quatrenion

◆ Matrix3x3T() [9/11]

template<typename T >
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( const T &  q0,
const T &  q1,
const T &  q2,
const T &  q3 
)
inlineexplicit

quatrenion

◆ Matrix3x3T() [10/11]

template<typename T >
template<bool b>
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( const T &  angle,
const Vector3T< T, b > &  axis 
)
inlineexplicit

angle axis

◆ Matrix3x3T() [11/11]

template<typename T >
CD_Matrix::Matrix3x3T< T >::Matrix3x3T ( const T &  roll,
const T &  pitch,
const T &  yaw 
)
inlineexplicit

Euler ROLL PITCH YAW - AROUND X, Y THEN Z

Member Function Documentation

◆ CeqthismulB() [1/2]

template<typename T >
void CD_Matrix::Matrix3x3T< T >::CeqthismulB ( const Matrix3x3T< T > &  B,
Matrix3x3T< T > &  C 
) const
inline

◆ CeqthismulB() [2/2]

template<typename T >
template<bool b>
void CD_Matrix::Matrix3x3T< T >::CeqthismulB ( Vector3T< T, b > &  B,
Vector3T< T, b > &  C 
) const
inline

Multiplication operator with a vector

◆ determinant()

template<typename T >
T CD_Matrix::Matrix3x3T< T >::determinant ( ) const
inline

Determinant

◆ Fill()

template<typename T >
void CD_Matrix::Matrix3x3T< T >::Fill ( value)
inline

fills with value

◆ Inversion()

template<typename T >
void CD_Matrix::Matrix3x3T< T >::Inversion ( struct Matrix3x3T< T > &  A) const
inline

Inversion

◆ IsIdentity()

template<typename T >
bool CD_Matrix::Matrix3x3T< T >::IsIdentity ( )
inline

returns true if matrix is identity

◆ operator()() [1/2]

template<typename T >
T& CD_Matrix::Matrix3x3T< T >::operator() ( unsigned int  i,
unsigned int  j 
)
inline

Access by giving the (i,j) element.

◆ operator()() [2/2]

template<typename T >
const T& CD_Matrix::Matrix3x3T< T >::operator() ( unsigned int  i,
unsigned int  j 
) const
inline

Access by giving the (i,j) element.

◆ operator*() [1/3]

template<typename T >
Matrix3x3T<T> CD_Matrix::Matrix3x3T< T >::operator* ( const double &  r)
inline

Multiplication operator with a constant

◆ operator*() [2/3]

template<typename T >
Matrix3x3T<T> CD_Matrix::Matrix3x3T< T >::operator* ( const Matrix3x3T< T > &  B) const
inline

Local matrix multiplication.

◆ operator*() [3/3]

template<typename T >
template<bool b>
Vector3T<T, b> CD_Matrix::Matrix3x3T< T >::operator* ( const Vector3T< T, b > &  v) const
inline

◆ operator*=() [1/2]

template<typename T >
void CD_Matrix::Matrix3x3T< T >::operator*= ( const Matrix3x3T< T > &  B)
inline

◆ operator*=() [2/2]

template<typename T >
void CD_Matrix::Matrix3x3T< T >::operator*= ( const T &  t)
inline

Matrix product with a scalar

◆ operator+()

template<typename T >
Matrix3x3T<T> CD_Matrix::Matrix3x3T< T >::operator+ ( const struct Matrix3x3T< T > &  B)
inline

Adition operator

◆ operator+=()

template<typename T >
void CD_Matrix::Matrix3x3T< T >::operator+= ( const Matrix3x3T< T > &  B)
inline

Self matrix addition

◆ operator-()

template<typename T >
struct Matrix3x3T< T > CD_Matrix::Matrix3x3T< T >::operator- ( const struct Matrix3x3T< T > &  B)
inline

Substraction operator

◆ operator-=()

template<typename T >
void CD_Matrix::Matrix3x3T< T >::operator-= ( const Matrix3x3T< T > &  B)
inline

Local matrix substraction

◆ operator=()

template<typename T >
Matrix3x3T<T>& CD_Matrix::Matrix3x3T< T >::operator= ( const Matrix3x3T< T > &  v)
inline

Copy operator

◆ operator[]() [1/2]

template<typename T >
T& CD_Matrix::Matrix3x3T< T >::operator[] ( unsigned int  i)
inline

ith element considering the matrix as an array.

◆ operator[]() [2/2]

template<typename T >
T CD_Matrix::Matrix3x3T< T >::operator[] ( unsigned int  i) const
inline

ith element considering the matrix as an array.

◆ serialize()

template<typename T >
template<class Archive >
void CD_Matrix::Matrix3x3T< T >::serialize ( Archive &  ar,
const unsigned int   
)
inline

◆ Set() [1/6]

template<typename T >
void CD_Matrix::Matrix3x3T< T >::Set ( const QuaternionT< T > &  q)
inline

quatrenion

◆ Set() [2/6]

template<typename T >
template<bool b>
void CD_Matrix::Matrix3x3T< T >::Set ( const T &  angle,
const Vector3T< T, b > &  axis 
)
inline

◆ Set() [3/6]

template<typename T >
void CD_Matrix::Matrix3x3T< T >::Set ( const T &  q0,
const T &  q1,
const T &  q2,
const T &  q3 
)
inline

quatrenion

◆ Set() [4/6]

template<typename T >
void CD_Matrix::Matrix3x3T< T >::Set ( const T &  yaw,
const T &  pitch,
const T &  roll 
)
inline

Euler

◆ Set() [5/6]

template<typename T >
void CD_Matrix::Matrix3x3T< T >::Set ( const T *const  x)
inline

Set from a pointer

◆ Set() [6/6]

template<typename T >
void CD_Matrix::Matrix3x3T< T >::Set ( const T  x0,
const T  x1,
const T  x2,
const T  x3,
const T  x4,
const T  x5,
const T  x6,
const T  x7,
const T  x8 
)
inline

set from 9 scalar

◆ setIdentity()

template<typename T >
void CD_Matrix::Matrix3x3T< T >::setIdentity ( void  )
inline

Set to identity

◆ setZero()

template<typename T >
void CD_Matrix::Matrix3x3T< T >::setZero ( void  )
inline

Set to zero matrix

◆ Transpose() [1/2]

template<typename T >
Matrix3x3T<T> CD_Matrix::Matrix3x3T< T >::Transpose ( ) const
inline

Transposition

◆ Transpose() [2/2]

template<typename T >
void CD_Matrix::Matrix3x3T< T >::Transpose ( Matrix3x3T< T > &  A) const
inline

Transposition

◆ TransposeIt()

template<typename T >
Matrix3x3T<T>& CD_Matrix::Matrix3x3T< T >::TransposeIt ( )
inline

Transposition

Friends And Related Function Documentation

◆ operator<<

template<typename T >
std::ostream& operator<< ( std::ostream &  os,
Matrix3x3T< T > const &  A 
)
friend

Member Data Documentation

◆ m

template<typename T >
T CD_Matrix::Matrix3x3T< T >::m[9]

The data array.


The documentation for this struct was generated from the following file: