nux-0.9.46

nux::Matrix4x4< T > Class Template Reference

#include <NuxCore/Math/Matrix4.h>

Public Member Functions

 Matrix4x4 ()
 ~Matrix4x4 ()
 Matrix4x4 (const Matrix4x4 &)
 Matrix4x4 (T a00, T a01, T a02, T a03, T a10, T a11, T a12, T a13, T a20, T a21, T a22, T a23, T a30, T a31, T a32, T a33)
Matrix4x4< T > & operator= (const Matrix4x4< T > &)
t_bool operator== (const Matrix4x4< T > &)
Matrix4x4< T > operator* (const Matrix4x4< T > &) const
Matrix4x4< T > operator+ (const Matrix4x4< T > &) const
Matrix4x4< T > operator- (const Matrix4x4< T > &) const
Matrix4x4< T > & operator*= (const Matrix4x4< T > &) const
Matrix4x4< T > & operator+= (const Matrix4x4< T > &) const
Matrix4x4< T > & operator-= (const Matrix4x4< T > &) const
Matrix4x4< T > operator* (const T &) const
Matrix4x4< T > operator/ (const T &) const
Matrix4x4< T > operator*= (const T &) const
Matrix4x4< T > operator/= (const T &) const
Vector4 operator* (const Vector4 &) const
Matrix4x4< T > operator- ()
T & operator() (unsigned int i, unsigned int j)
T operator() (unsigned int i, unsigned int j) const
 operator T * ()
 operator const T * () const
void Translate (T x, T y, T z)
void Translate (const Vector3 &)
void Rotate_x (T angle)
void Rotate_y (T angle)
void Rotate_z (T angle)
void Scale (T sx, T sy, T sz)
T Trace () const
T Determinant () const
void Inverse ()
Matrix4x4< T > GetInverse () const
void Transpose ()
void Scale (T s)
void Diagonal (T x, T y, T z, T w=T(1))
void Rotate (T angle, Vector3 axis)
void LookAt (const Vector3 &eye, const Vector3 &at, const Vector3 &up)
void Orthographic (T l, T r, T b, T t, T n, T f)
 set to an orthographic projection matrix.
void Perspective (T l, T r, T t, T b, T n, T f)
 set to a perspective projection matrix.
void PerspectiveInverse (T l, T r, T t, T b, T n, T f)
void Perspective (T FoV, T AspectRatio, T NearPlane, T FarPlane)
 set to a perspective projection matrix specified in terms of field of view and aspect ratio.
void Zero ()
void Identity ()

Static Public Member Functions

static Matrix4x4< T > IDENTITY ()
static Matrix4x4< T > ZERO ()
static Matrix4x4< T > ROTATEX (T angle)
static Matrix4x4< T > ROTATEY (T angle)
static Matrix4x4< T > ROTATEZ (T angle)
static Matrix4x4< T > TRANSLATE (T x, T y, T z)
static Matrix4x4< T > SCALE (T x, T y, T z)

Data Fields

T m [4][4]

template<typename T>
class nux::Matrix4x4< T >


Constructor & Destructor Documentation

template<typename T >
nux::Matrix4x4< T >::Matrix4x4 ( )
template<typename T >
nux::Matrix4x4< T >::~Matrix4x4 ( )
template<typename T >
nux::Matrix4x4< T >::Matrix4x4 ( const Matrix4x4< T > &  M)
template<typename T>
nux::Matrix4x4< T >::Matrix4x4 ( T  a00,
T  a01,
T  a02,
T  a03,
T  a10,
T  a11,
T  a12,
T  a13,
T  a20,
T  a21,
T  a22,
T  a23,
T  a30,
T  a31,
T  a32,
T  a33 
)

Member Function Documentation

template<typename T >
T nux::Matrix4x4< T >::Determinant ( ) const
template<typename T>
void nux::Matrix4x4< T >::Diagonal ( T  x,
T  y,
T  z,
T  w = T (1) 
)
template<typename T >
Matrix4x4< T > nux::Matrix4x4< T >::GetInverse ( ) const
template<typename T >
void nux::Matrix4x4< T >::Identity ( )
template<typename T >
Matrix4x4< T > nux::Matrix4x4< T >::IDENTITY ( ) [static]
template<typename T >
void nux::Matrix4x4< T >::Inverse ( )
template<typename T >
nux::Matrix4x4< T >::operator const T * ( ) const
template<typename T >
nux::Matrix4x4< T >::operator T * ( )
template<typename T >
T & nux::Matrix4x4< T >::operator() ( unsigned int  i,
unsigned int  j 
)
template<typename T >
T nux::Matrix4x4< T >::operator() ( unsigned int  i,
unsigned int  j 
) const
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::operator* ( const T &  f) const
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::operator* ( const Matrix4x4< T > &  iM) const
template<typename T>
Vector4 nux::Matrix4x4< T >::operator* ( const Vector4 &  V) const
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::operator*= ( const T &  f) const
template<typename T>
Matrix4x4< T > & nux::Matrix4x4< T >::operator*= ( const Matrix4x4< T > &  iM) const
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::operator+ ( const Matrix4x4< T > &  iM) const
template<typename T>
Matrix4x4< T > & nux::Matrix4x4< T >::operator+= ( const Matrix4x4< T > &  iM) const
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::operator- ( const Matrix4x4< T > &  iM) const
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::operator- ( )
template<typename T>
Matrix4x4< T > & nux::Matrix4x4< T >::operator-= ( const Matrix4x4< T > &  iM) const
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::operator/ ( const T &  f) const
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::operator/= ( const T &  f) const
template<typename T>
Matrix4x4< T > & nux::Matrix4x4< T >::operator= ( const Matrix4x4< T > &  M)
template<typename T>
t_bool nux::Matrix4x4< T >::operator== ( const Matrix4x4< T > &  M)
template<typename T>
void nux::Matrix4x4< T >::Orthographic ( T  l,
T  r,
T  b,
T  t,
T  n,
T  f 
)

set to an orthographic projection matrix.

template<typename T>
void nux::Matrix4x4< T >::Perspective ( T  FoV,
T  AspectRatio,
T  NearPlane,
T  FarPlane 
)

set to a perspective projection matrix specified in terms of field of view and aspect ratio.

template<typename T>
void nux::Matrix4x4< T >::Perspective ( T  l,
T  r,
T  t,
T  b,
T  n,
T  f 
)

set to a perspective projection matrix.

template<typename T>
void nux::Matrix4x4< T >::PerspectiveInverse ( T  l,
T  r,
T  t,
T  b,
T  n,
T  f 
)
template<typename T>
void nux::Matrix4x4< T >::Rotate ( T  angle,
Vector3  axis 
)
template<typename T>
void nux::Matrix4x4< T >::Rotate_x ( T  angle)
template<typename T>
void nux::Matrix4x4< T >::Rotate_y ( T  angle)
template<typename T>
void nux::Matrix4x4< T >::Rotate_z ( T  angle)
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::ROTATEX ( T  angle) [static]
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::ROTATEY ( T  angle) [static]
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::ROTATEZ ( T  angle) [static]
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::SCALE ( T  x,
T  y,
T  z 
) [static]
template<typename T>
void nux::Matrix4x4< T >::Scale ( T  sx,
T  sy,
T  sz 
)
template<typename T>
void nux::Matrix4x4< T >::Scale ( T  s)
template<typename T >
T nux::Matrix4x4< T >::Trace ( ) const
template<typename T>
void nux::Matrix4x4< T >::Translate ( const Vector3 &  )
template<typename T>
Matrix4x4< T > nux::Matrix4x4< T >::TRANSLATE ( T  x,
T  y,
T  z 
) [static]
template<typename T>
void nux::Matrix4x4< T >::Translate ( T  x,
T  y,
T  z 
)
template<typename T >
void nux::Matrix4x4< T >::Transpose ( )
template<typename T >
void nux::Matrix4x4< T >::Zero ( )
template<typename T >
Matrix4x4< T > nux::Matrix4x4< T >::ZERO ( ) [static]

Field Documentation


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