FIFE  2008.0
 All Classes Namespaces Functions Variables Enumerations Enumerator
FIFE::Matrix< T > Class Template Reference

#include <matrix.h>

Inheritance diagram for FIFE::Matrix< T >:

List of all members.

Public Member Functions

Matrix inverse () const
Matrixoperator/= (T val)
Matrix adjoint () const
MatrixloadRotate (T angle, T x, T y, T z)
MatrixapplyScale (T x, T y, T z)
MatrixloadScale (T x, T y, T z=1)
MatrixapplyTranslate (T x, T y, T z)
MatrixloadTranslate (const T x, const T y, const T z)
PointType3D< T > operator* (const PointType3D< T > &vec)
T & operator[] (int ind)
Matrixmult3by3 (const Matrix &mat)
Matrix< T > & Rmult4by4 (const Matrix< T > &mat)

Detailed Description

template<typename T>
class FIFE::Matrix< T >

Minimal matrix class to assist in view 3d calculations

Definition at line 52 of file matrix.h.


Member Function Documentation

template<typename T>
Matrix FIFE::Matrix< T >::adjoint ( ) const [inline]

Get the adjoint matrix

Definition at line 83 of file matrix.h.

Referenced by FIFE::Matrix< double >::inverse().

Here is the caller graph for this function:

template<typename T>
Matrix& FIFE::Matrix< T >::applyScale ( x,
y,
z 
) [inline]

Apply scale into this matrix

Definition at line 148 of file matrix.h.

template<typename T>
Matrix& FIFE::Matrix< T >::applyTranslate ( x,
y,
z 
) [inline]

Apply translation into this matrix

Definition at line 180 of file matrix.h.

template<typename T>
Matrix FIFE::Matrix< T >::inverse ( ) const [inline]

Adjoint method inverse, constant time inversion implementation

Definition at line 63 of file matrix.h.

template<typename T>
Matrix& FIFE::Matrix< T >::loadRotate ( angle,
x,
y,
z 
) [inline]

Make this a rotation matrix

Definition at line 113 of file matrix.h.

template<typename T>
Matrix& FIFE::Matrix< T >::loadScale ( x,
y,
z = 1 
) [inline]

Make this a scale matrix

Definition at line 157 of file matrix.h.

Referenced by FIFE::Matrix< double >::applyScale().

Here is the caller graph for this function:

template<typename T>
Matrix& FIFE::Matrix< T >::loadTranslate ( const T  x,
const T  y,
const T  z 
) [inline]

Make this a translation matrix

Definition at line 189 of file matrix.h.

Referenced by FIFE::Matrix< double >::applyTranslate().

Here is the caller graph for this function:

template<typename T>
Matrix& FIFE::Matrix< T >::mult3by3 ( const Matrix< T > &  mat) [inline]

Apply the matrix dot product to this matrix

Definition at line 233 of file matrix.h.

template<typename T>
PointType3D<T> FIFE::Matrix< T >::operator* ( const PointType3D< T > &  vec) [inline]

Transform given point using this matrix

Definition at line 212 of file matrix.h.

template<typename T>
Matrix& FIFE::Matrix< T >::operator/= ( val) [inline]

Divide this matrix by a scalar

Definition at line 75 of file matrix.h.

template<typename T>
T& FIFE::Matrix< T >::operator[] ( int  ind) [inline]

Direct access to the matrix elements, just remember they are in column major format!!

Definition at line 222 of file matrix.h.

template<typename T>
Matrix<T>& FIFE::Matrix< T >::Rmult4by4 ( const Matrix< T > &  mat) [inline]

this->Rmult4by4(temp) == [temp] X [*this] also equal to temp->mult4by4(*this)

Definition at line 255 of file matrix.h.


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