LightWrap++
AC++wrapperfortheLightWave3DSDK
lwpp::Matrix4x4< T > Class Template Reference

#include <matrix4x4.h>

+ Collaboration diagram for lwpp::Matrix4x4< T >:

List of all members.

Public Member Functions

 Matrix4x4 ()
 Blank Constructor, sets the identity matrix.
 Matrix4x4 (const Vector3< T > &right, const Vector3< T > &up, const Vector3< T > &forward)
 Construct from 3 coordinate vectors (usually passed from LW)
 Matrix4x4 (Vector3< T > &right, Vector3< T > &up, Vector3< T > &forward, Point3< T > &pos)
 Matrix4x4 (const T v[9])
 Construct from 3 coordinate vectors (usually passed from LW)
 Matrix4x4 (const Matrix4x4 &v)
 Matrix4x4 (T m00, T m01, T m02, T m03, T m10, T m11, T m12, T m13, T m20, T m21, T m22, T m23, T m30, T m31, T m32, T m33)
 Matrix4x4 (T v[4][4])
Matrix4x4Inverse ()
 Gauss-Jordan elimination with partial pivoting.
Matrix4x4 Mul (const Matrix4x4 &m1)
 Compute the product of two matrices.
Vector3< T > operator() (const Vector3< T > &v) const
Matrix4x4operator= (const Matrix4x4 &v)
void RotateB (T angle)
void RotateH (T angle)
void RotateP (T angle)
void SetIdentity ()
 Set identity matrix.
void SetRotationBHP (T heading, T pitch, T bank)
void SetRotationHPB (T heading, T pitch, T bank)

Public Attributes

m [4][4]

Related Functions

(Note that these are not member functions.)

Point3< T > & Mul3x3 (Point3< T > &v) const
Point3< T > operator() (const Point3< T > &v) const
operator() (Point3< T > *v) const
Vector3< T > transform (const Vector3< T > &v) const

Constructor & Destructor Documentation

template<typename T >
lwpp::Matrix4x4< T >::Matrix4x4 ( )
inline

Blank Constructor, sets the identity matrix.

template<typename T >
lwpp::Matrix4x4< T >::Matrix4x4 ( const Vector3< T > &  right,
const Vector3< T > &  up,
const Vector3< T > &  forward 
)
inline

Construct from 3 coordinate vectors (usually passed from LW)

template<typename T >
lwpp::Matrix4x4< T >::Matrix4x4 ( Vector3< T > &  right,
Vector3< T > &  up,
Vector3< T > &  forward,
Point3< T > &  pos 
)
inline
template<typename T >
lwpp::Matrix4x4< T >::Matrix4x4 ( const T  v[9])
inline

Construct from 3 coordinate vectors (usually passed from LW)

template<typename T >
lwpp::Matrix4x4< T >::Matrix4x4 ( const Matrix4x4< T > &  v)
inline
template<typename T >
lwpp::Matrix4x4< T >::Matrix4x4 ( m00,
m01,
m02,
m03,
m10,
m11,
m12,
m13,
m20,
m21,
m22,
m23,
m30,
m31,
m32,
m33 
)
inline
template<typename T >
lwpp::Matrix4x4< T >::Matrix4x4 ( v[4][4])
inline

Member Function Documentation

template<typename T >
Matrix4x4& lwpp::Matrix4x4< T >::Inverse ( )
inline

Gauss-Jordan elimination with partial pivoting.

template<typename T >
Matrix4x4 lwpp::Matrix4x4< T >::Mul ( const Matrix4x4< T > &  m1)
inline

Compute the product of two matrices.

template<typename T >
Vector3<T> lwpp::Matrix4x4< T >::operator() ( const Vector3< T > &  v) const
inline
template<typename T >
Matrix4x4& lwpp::Matrix4x4< T >::operator= ( const Matrix4x4< T > &  v)
inline
template<typename T >
void lwpp::Matrix4x4< T >::RotateB ( angle)
inline
template<typename T >
void lwpp::Matrix4x4< T >::RotateH ( angle)
inline
template<typename T >
void lwpp::Matrix4x4< T >::RotateP ( angle)
inline
template<typename T >
void lwpp::Matrix4x4< T >::SetIdentity ( )
inline

Set identity matrix.

template<typename T >
void lwpp::Matrix4x4< T >::SetRotationBHP ( heading,
pitch,
bank 
)
inline
template<typename T >
void lwpp::Matrix4x4< T >::SetRotationHPB ( heading,
pitch,
bank 
)
inline

Friends And Related Function Documentation

template<typename T >
Point3<T>& Mul3x3 ( Point3< T > &  v) const
related

Quickly Transform a Point3d with a Matrix4x4 (only using 3x3

template<typename T >
Point3<T> operator() ( const Point3< T > &  v) const
related

Transform a Point3d with a Matrix4x4

template<typename T >
T operator() ( Point3< T > *  v) const
related

Transform a Point3d with a Matrix4x4

template<typename T >
Vector3<T> transform ( const Vector3< T > &  v) const
related

Transform a Vector3d with a Matrix4x4


Member Data Documentation

template<typename T >
T lwpp::Matrix4x4< T >::m[4][4]

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