FemViewer::Matrix< T > Class Template Reference

#include <Matrix.h>

Collaboration diagram for FemViewer::Matrix< T >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 Matrix ()
 Matrix (T v)
 Matrix (const Matrix< T > &Tr)
Matrixoperator= (const Matrix< T > &Tr)
bool IsIdentity () const
void SetIdentity ()
Toperator[] (size_t idx)
const Toperator[] (size_t idx) const
Matrix operator+ (const Matrix< T > &Tr) const
Matrix operator- (const Matrix< T > &Tr) const
Matrix operator* (const Matrix< T > &Tr) const
Matrixoperator+= (const Matrix< T > &Tr)
Matrixoperator-= (const Matrix< T > &Tr)
Matrixoperator*= (T constant)
Matrixoperator/= (T constant)
Vec3D operator* (const Vec3D &dc) const
CVec3< Toperator* (const Vec3< T > &dc) const
Homogenous operator* (const Homogenous &hc) const
void make3x3 (T *out) const
void LoadIdentity ()
void LoadNullMatrix ()
void SetScalefactors (const T &sx, const T &sy, const T &sz)
void SetTransformationFactors (const Vec3< T > &coef)
bool IsSingular () const
void Apply () const
virtual ~Matrix ()
void rotateAbout (const float *coord, const float angle)
void scale (const Vec3D &vec)
void translate (const Vec3D &vec)
Matrix Invers () const
template<>
bool IsSingular () const
template<>
void rotateAbout (const float *coord, const float angle)
template<>
void scale (const Vec3D &vec)
template<>
void translate (const Vec3D &vec)
template<>
Matrix< float > Invers () const

Static Public Member Functions

static Matrix LookAt (const fvmath::Vec3< T > &eye, const fvmath::Vec3< T > &center, const fvmath::Vec3< T > &up)

Public Attributes

std::vector< Tmatrix

Static Public Attributes

static Matrix Identity

Friends

std::ostream & operator<< (std::ostream &strm, const Matrix &mt)

template<typename T = float>
class FemViewer::Matrix< T >


Constructor & Destructor Documentation

template<typename T = float>
FemViewer::Matrix< T >::Matrix (  )  [inline]
template<typename T = float>
FemViewer::Matrix< T >::Matrix ( T  v  )  [inline]
template<typename T = float>
FemViewer::Matrix< T >::Matrix ( const Matrix< T > &  Tr  )  [inline]
template<typename T = float>
virtual FemViewer::Matrix< T >::~Matrix (  )  [inline, virtual]

Member Function Documentation

template<typename T = float>
void FemViewer::Matrix< T >::Apply (  )  const [inline]
template<>
Matrix< float > FemViewer::Matrix< float >::Invers (  )  const [inline]

Here is the call graph for this function:

template<typename T = float>
Matrix FemViewer::Matrix< T >::Invers (  )  const

Here is the caller graph for this function:

template<typename T = float>
bool FemViewer::Matrix< T >::IsIdentity (  )  const [inline]
template<>
bool FemViewer::Matrix< float >::IsSingular (  )  const [inline]
template<typename T = float>
bool FemViewer::Matrix< T >::IsSingular (  )  const
template<typename T = float>
void FemViewer::Matrix< T >::LoadIdentity (  )  [inline]
template<typename T = float>
void FemViewer::Matrix< T >::LoadNullMatrix (  )  [inline]
template<typename T = float>
static Matrix FemViewer::Matrix< T >::LookAt ( const fvmath::Vec3< T > &  eye,
const fvmath::Vec3< T > &  center,
const fvmath::Vec3< T > &  up 
) [inline, static]
template<typename T = float>
void FemViewer::Matrix< T >::make3x3 ( T out  )  const [inline]
template<typename T = float>
Homogenous FemViewer::Matrix< T >::operator* ( const Homogenous hc  )  const [inline]
template<typename T = float>
CVec3<T> FemViewer::Matrix< T >::operator* ( const Vec3< T > &  dc  )  const [inline]
template<typename T = float>
Vec3D FemViewer::Matrix< T >::operator* ( const Vec3D dc  )  const [inline]
template<typename T = float>
Matrix FemViewer::Matrix< T >::operator* ( const Matrix< T > &  Tr  )  const [inline]
template<typename T = float>
Matrix& FemViewer::Matrix< T >::operator*= ( T  constant  )  [inline]
template<typename T = float>
Matrix FemViewer::Matrix< T >::operator+ ( const Matrix< T > &  Tr  )  const [inline]
template<typename T = float>
Matrix& FemViewer::Matrix< T >::operator+= ( const Matrix< T > &  Tr  )  [inline]
template<typename T = float>
Matrix FemViewer::Matrix< T >::operator- ( const Matrix< T > &  Tr  )  const [inline]
template<typename T = float>
Matrix& FemViewer::Matrix< T >::operator-= ( const Matrix< T > &  Tr  )  [inline]
template<typename T = float>
Matrix& FemViewer::Matrix< T >::operator/= ( T  constant  )  [inline]
template<typename T = float>
Matrix& FemViewer::Matrix< T >::operator= ( const Matrix< T > &  Tr  )  [inline]
template<typename T = float>
const T& FemViewer::Matrix< T >::operator[] ( size_t  idx  )  const [inline]
template<typename T = float>
T& FemViewer::Matrix< T >::operator[] ( size_t  idx  )  [inline]
template<>
void FemViewer::Matrix< float >::rotateAbout ( const float *  coord,
const float  angle 
) [inline]

Here is the call graph for this function:

template<typename T = float>
void FemViewer::Matrix< T >::rotateAbout ( const float *  coord,
const float  angle 
)

Here is the caller graph for this function:

template<>
void FemViewer::Matrix< float >::scale ( const Vec3D vec  )  [inline]

Here is the call graph for this function:

template<typename T = float>
void FemViewer::Matrix< T >::scale ( const Vec3D vec  ) 

Here is the caller graph for this function:

template<typename T = float>
void FemViewer::Matrix< T >::SetIdentity (  )  [inline]

Here is the caller graph for this function:

template<typename T = float>
void FemViewer::Matrix< T >::SetScalefactors ( const T sx,
const T sy,
const T sz 
) [inline]
template<typename T = float>
void FemViewer::Matrix< T >::SetTransformationFactors ( const Vec3< T > &  coef  )  [inline]
template<>
void FemViewer::Matrix< float >::translate ( const Vec3D vec  )  [inline]

Here is the call graph for this function:

template<typename T = float>
void FemViewer::Matrix< T >::translate ( const Vec3D vec  ) 

Here is the caller graph for this function:


Friends And Related Function Documentation

template<typename T = float>
std::ostream& operator<< ( std::ostream &  strm,
const Matrix< T > &  mt 
) [friend]

Member Data Documentation

template<typename T = float>
Matrix< T > FemViewer::Matrix< T >::Identity [inline, static]
template<typename T = float>
std::vector<T> FemViewer::Matrix< T >::matrix

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 3 Jun 2020 for ModFEM by  doxygen 1.6.1