Rumba C++ SDK
Imath::Matrix44< T > Class Template Reference

#include <ImathFrame.h>

Public Member Functions

T * operator[] (int i)
 
const T * operator[] (int i) const
 
 Matrix44 (Uninitialized)
 
 Matrix44 ()
 
 Matrix44 (T a)
 
 Matrix44 (const T a[4][4])
 
 Matrix44 (T a, T b, T c, T d, T e, T f, T g, T h, T i, T j, T k, T l, T m, T n, T o, T p)
 
 Matrix44 (Matrix33< T > r, Vec3< T > t)
 
 Matrix44 (const Matrix44 &v)
 
template<class S >
 Matrix44 (const Matrix44< S > &v)
 
const Matrix44operator= (const Matrix44 &v)
 
const Matrix44operator= (T a)
 
T * getValue ()
 
const T * getValue () const
 
template<class S >
void getValue (Matrix44< S > &v) const
 
template<class S >
Matrix44setValue (const Matrix44< S > &v)
 
template<class S >
Matrix44setTheMatrix (const Matrix44< S > &v)
 
void makeIdentity ()
 
bool operator== (const Matrix44 &v) const
 
bool operator!= (const Matrix44 &v) const
 
bool equalWithAbsError (const Matrix44< T > &v, T e) const
 
bool equalWithRelError (const Matrix44< T > &v, T e) const
 
const Matrix44operator+= (const Matrix44 &v)
 
const Matrix44operator+= (T a)
 
Matrix44 operator+ (const Matrix44 &v) const
 
const Matrix44operator-= (const Matrix44 &v)
 
const Matrix44operator-= (T a)
 
Matrix44 operator- (const Matrix44 &v) const
 
Matrix44 operator- () const
 
const Matrix44negate ()
 
const Matrix44operator*= (T a)
 
Matrix44 operator* (T a) const
 
const Matrix44operator*= (const Matrix44 &v)
 
Matrix44 operator* (const Matrix44 &v) const
 
template<class S >
void multVecMatrix (const Vec3< S > &src, Vec3< S > &dst) const
 
template<class S >
void multDirMatrix (const Vec3< S > &src, Vec3< S > &dst) const
 
const Matrix44operator/= (T a)
 
Matrix44 operator/ (T a) const
 
const Matrix44transpose ()
 
Matrix44 transposed () const
 
const Matrix44invert (bool singExc=false) throw (Iex::MathExc)
 
Matrix44< T > inverse (bool singExc=false) const throw (Iex::MathExc)
 
const Matrix44gjInvert (bool singExc=false) throw (Iex::MathExc)
 
Matrix44< T > gjInverse (bool singExc=false) const throw (Iex::MathExc)
 
template<class S >
const Matrix44setEulerAngles (const Vec3< S > &r)
 
template<class S >
const Matrix44setAxisAngle (const Vec3< S > &ax, S ang)
 
template<class S >
const Matrix44rotate (const Vec3< S > &r)
 
const Matrix44setScale (T s)
 
template<class S >
const Matrix44setScale (const Vec3< S > &s)
 
template<class S >
const Matrix44scale (const Vec3< S > &s)
 
template<class S >
const Matrix44setTranslation (const Vec3< S > &t)
 
const Vec3< T > translation () const
 
template<class S >
const Matrix44translate (const Vec3< S > &t)
 
template<class S >
const Matrix44setShear (const Vec3< S > &h)
 
template<class S >
const Matrix44setShear (const Shear6< S > &h)
 
template<class S >
const Matrix44shear (const Vec3< S > &h)
 
template<class S >
const Matrix44shear (const Shear6< S > &h)
 
template<class S >
Matrix44< T > & setValue (const Matrix44< S > &v)
 
template<class S >
Matrix44< T > & setTheMatrix (const Matrix44< S > &v)
 
template<class S >
const Matrix44< T > & setEulerAngles (const Vec3< S > &r)
 
template<class S >
const Matrix44< T > & setAxisAngle (const Vec3< S > &axis, S angle)
 
template<class S >
const Matrix44< T > & rotate (const Vec3< S > &r)
 
template<class S >
const Matrix44< T > & setScale (const Vec3< S > &s)
 
template<class S >
const Matrix44< T > & scale (const Vec3< S > &s)
 
template<class S >
const Matrix44< T > & setTranslation (const Vec3< S > &t)
 
template<class S >
const Matrix44< T > & translate (const Vec3< S > &t)
 
template<class S >
const Matrix44< T > & setShear (const Vec3< S > &h)
 
template<class S >
const Matrix44< T > & setShear (const Shear6< S > &h)
 
template<class S >
const Matrix44< T > & shear (const Vec3< S > &h)
 
template<class S >
const Matrix44< T > & shear (const Shear6< S > &h)
 

Static Public Member Functions

static void multiply (const Matrix44 &a, const Matrix44 &b, Matrix44 &c)
 
static T baseTypeMin ()
 
static T baseTypeMax ()
 
static T baseTypeSmallest ()
 
static T baseTypeEpsilon ()
 

Public Attributes

x [4][4]
 

Constructor & Destructor Documentation

◆ Matrix44() [1/8]

template<class T>
Imath::Matrix44< T >::Matrix44 ( Uninitialized  )
inline

◆ Matrix44() [2/8]

template<class T >
Imath::Matrix44< T >::Matrix44 ( )
inline

◆ Matrix44() [3/8]

template<class T >
Imath::Matrix44< T >::Matrix44 ( a)
inline

◆ Matrix44() [4/8]

template<class T >
Imath::Matrix44< T >::Matrix44 ( const T  a[4][4])
inline

◆ Matrix44() [5/8]

template<class T >
Imath::Matrix44< T >::Matrix44 ( a,
b,
c,
d,
e,
f,
g,
h,
i,
j,
k,
l,
m,
n,
o,
p 
)
inline

◆ Matrix44() [6/8]

template<class T >
Imath::Matrix44< T >::Matrix44 ( Matrix33< T >  r,
Vec3< T >  t 
)
inline

◆ Matrix44() [7/8]

template<class T >
Imath::Matrix44< T >::Matrix44 ( const Matrix44< T > &  v)
inline

◆ Matrix44() [8/8]

template<class T >
template<class S >
Imath::Matrix44< T >::Matrix44 ( const Matrix44< S > &  v)
inlineexplicit

Member Function Documentation

◆ baseTypeEpsilon()

template<class T>
static T Imath::Matrix44< T >::baseTypeEpsilon ( )
inlinestatic

◆ baseTypeMax()

template<class T>
static T Imath::Matrix44< T >::baseTypeMax ( )
inlinestatic

◆ baseTypeMin()

template<class T>
static T Imath::Matrix44< T >::baseTypeMin ( )
inlinestatic

◆ baseTypeSmallest()

template<class T>
static T Imath::Matrix44< T >::baseTypeSmallest ( )
inlinestatic

◆ equalWithAbsError()

template<class T >
bool Imath::Matrix44< T >::equalWithAbsError ( const Matrix44< T > &  v,
e 
) const

◆ equalWithRelError()

template<class T >
bool Imath::Matrix44< T >::equalWithRelError ( const Matrix44< T > &  v,
e 
) const

◆ getValue() [1/3]

template<class T >
T * Imath::Matrix44< T >::getValue ( )
inline

◆ getValue() [2/3]

template<class T >
const T * Imath::Matrix44< T >::getValue ( ) const
inline

◆ getValue() [3/3]

template<class T >
template<class S >
void Imath::Matrix44< T >::getValue ( Matrix44< S > &  v) const
inline

◆ gjInverse()

template<class T >
Matrix44< T > Imath::Matrix44< T >::gjInverse ( bool  singExc = false) const
throw (Iex::MathExc
)

◆ gjInvert()

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::gjInvert ( bool  singExc = false)
throw (Iex::MathExc
)

◆ inverse()

template<class T >
Matrix44< T > Imath::Matrix44< T >::inverse ( bool  singExc = false) const
throw (Iex::MathExc
)

◆ invert()

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::invert ( bool  singExc = false)
throw (Iex::MathExc
)

◆ makeIdentity()

template<class T >
void Imath::Matrix44< T >::makeIdentity ( )
inline

◆ multDirMatrix()

template<class T >
template<class S >
void Imath::Matrix44< T >::multDirMatrix ( const Vec3< S > &  src,
Vec3< S > &  dst 
) const

◆ multiply()

template<class T >
void Imath::Matrix44< T >::multiply ( const Matrix44< T > &  a,
const Matrix44< T > &  b,
Matrix44< T > &  c 
)
static

◆ multVecMatrix()

template<class T >
template<class S >
void Imath::Matrix44< T >::multVecMatrix ( const Vec3< S > &  src,
Vec3< S > &  dst 
) const

◆ negate()

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::negate ( )

◆ operator!=()

template<class T >
bool Imath::Matrix44< T >::operator!= ( const Matrix44< T > &  v) const

◆ operator*() [1/2]

template<class T >
Matrix44< T > Imath::Matrix44< T >::operator* ( a) const

◆ operator*() [2/2]

template<class T >
Matrix44< T > Imath::Matrix44< T >::operator* ( const Matrix44< T > &  v) const
inline

◆ operator*=() [1/2]

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::operator*= ( a)

◆ operator*=() [2/2]

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::operator*= ( const Matrix44< T > &  v)
inline

◆ operator+()

template<class T >
Matrix44< T > Imath::Matrix44< T >::operator+ ( const Matrix44< T > &  v) const

◆ operator+=() [1/2]

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::operator+= ( const Matrix44< T > &  v)

◆ operator+=() [2/2]

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::operator+= ( a)

◆ operator-() [1/2]

template<class T >
Matrix44< T > Imath::Matrix44< T >::operator- ( const Matrix44< T > &  v) const

◆ operator-() [2/2]

template<class T >
Matrix44< T > Imath::Matrix44< T >::operator- ( ) const

◆ operator-=() [1/2]

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::operator-= ( const Matrix44< T > &  v)

◆ operator-=() [2/2]

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::operator-= ( a)

◆ operator/()

template<class T >
Matrix44< T > Imath::Matrix44< T >::operator/ ( a) const

◆ operator/=()

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::operator/= ( a)

◆ operator=() [1/2]

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::operator= ( const Matrix44< T > &  v)
inline

◆ operator=() [2/2]

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::operator= ( a)
inline

◆ operator==()

template<class T >
bool Imath::Matrix44< T >::operator== ( const Matrix44< T > &  v) const

◆ operator[]() [1/2]

template<class T >
T * Imath::Matrix44< T >::operator[] ( int  i)
inline

◆ operator[]() [2/2]

template<class T >
const T * Imath::Matrix44< T >::operator[] ( int  i) const
inline

◆ rotate() [1/2]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::rotate ( const Vec3< S > &  r)

◆ rotate() [2/2]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::rotate ( const Vec3< S > &  r)

◆ scale() [1/2]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::scale ( const Vec3< S > &  s)

◆ scale() [2/2]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::scale ( const Vec3< S > &  s)

◆ setAxisAngle() [1/2]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::setAxisAngle ( const Vec3< S > &  ax,
ang 
)

◆ setAxisAngle() [2/2]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::setAxisAngle ( const Vec3< S > &  axis,
angle 
)

◆ setEulerAngles() [1/2]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::setEulerAngles ( const Vec3< S > &  r)

◆ setEulerAngles() [2/2]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::setEulerAngles ( const Vec3< S > &  r)

◆ setScale() [1/3]

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::setScale ( s)

◆ setScale() [2/3]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::setScale ( const Vec3< S > &  s)

◆ setScale() [3/3]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::setScale ( const Vec3< S > &  s)

◆ setShear() [1/4]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::setShear ( const Vec3< S > &  h)

◆ setShear() [2/4]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::setShear ( const Shear6< S > &  h)

◆ setShear() [3/4]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::setShear ( const Vec3< S > &  h)

◆ setShear() [4/4]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::setShear ( const Shear6< S > &  h)

◆ setTheMatrix() [1/2]

template<class T>
template<class S >
Matrix44& Imath::Matrix44< T >::setTheMatrix ( const Matrix44< S > &  v)

◆ setTheMatrix() [2/2]

template<class T>
template<class S >
Matrix44<T>& Imath::Matrix44< T >::setTheMatrix ( const Matrix44< S > &  v)
inline

◆ setTranslation() [1/2]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::setTranslation ( const Vec3< S > &  t)

◆ setTranslation() [2/2]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::setTranslation ( const Vec3< S > &  t)

◆ setValue() [1/2]

template<class T>
template<class S >
Matrix44& Imath::Matrix44< T >::setValue ( const Matrix44< S > &  v)

◆ setValue() [2/2]

template<class T>
template<class S >
Matrix44<T>& Imath::Matrix44< T >::setValue ( const Matrix44< S > &  v)
inline

◆ shear() [1/4]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::shear ( const Vec3< S > &  h)

◆ shear() [2/4]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::shear ( const Shear6< S > &  h)

◆ shear() [3/4]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::shear ( const Vec3< S > &  h)

◆ shear() [4/4]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::shear ( const Shear6< S > &  h)

◆ translate() [1/2]

template<class T>
template<class S >
const Matrix44& Imath::Matrix44< T >::translate ( const Vec3< S > &  t)

◆ translate() [2/2]

template<class T>
template<class S >
const Matrix44<T>& Imath::Matrix44< T >::translate ( const Vec3< S > &  t)

◆ translation()

template<class T >
const Vec3< T > Imath::Matrix44< T >::translation ( ) const
inline

◆ transpose()

template<class T >
const Matrix44< T > & Imath::Matrix44< T >::transpose ( )

◆ transposed()

template<class T >
Matrix44< T > Imath::Matrix44< T >::transposed ( ) const

Member Data Documentation

◆ x

template<class T>
T Imath::Matrix44< T >::x[4][4]

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