Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
Matrix3x3< VType > Class Template Reference

Public Types

typedef Matrix3x3< VType > Self
 
typedef Vector3< VType > MVector
 

Public Member Functions

 Matrix3x3 (const VType &m00, const VType &m01, const VType &m02, const VType &m10, const VType &m11, const VType &m12, const VType &m20, const VType &m21, const VType &m22)
 
 Matrix3x3 (const Self &mb)
 
SelfSet (const VType &m00, const VType &m01, const VType &m02, const VType &m10, const VType &m11, const VType &m12, const VType &m20, const VType &m21, const VType &m22)
 
Selfoperator= (const Self &mb)
 
bool operator== (const Self &mb) const
 
Selfoperator+= (const Self &mb)
 
Selfoperator-= (const Self &mb)
 
Selfoperator *= (const VType &k)
 
Self operator+ (const Self &mb) const
 
Self operator- (const Self &mb) const
 
Self operator * (const VType &k) const
 
Self operator * (const Self &mb) const
 
MVector operator * (const MVector &v) const
 
VType Det (void) const
 
VType Trace (void) const
 
VType * Data ()
 
const VType * Data () const
 
VType & operator() (const int i, const int j)
 
VType operator() (const int i, const int j) const
 
VType & operator[] (const int i)
 
VType operator[] (const int i) const
 
Self Transpose (void) const
 
Self ComatrixTransposed (void) const
 
Self Inverse (void) const
 
MVector Row (const int i) const
 
MVector Col (const int i) const
 
void SetRow (int i, const MVector &v1)
 
void SetCol (int i, const MVector &v1)
 
Self Orthogonalize () const
 
VType MulBothSides (const MVector &v, const MVector &u) const
 
Vector2< VType > Project (const Vector2< VType > &v) const
 
VType FrobeniusNorm () const
 
void SymmetricEigenSolver (MVector *eig_val, Self *eig_vec)
 
bool IsNaN () const
 

Static Public Member Functions

template<class VType2 >
static Self Cast (const Matrix3x3< VType2 > &mb)
 
static Self FromRows (const MVector &v1, const MVector &v2, const MVector &v3)
 
static Self FromCols (const MVector &v1, const MVector &v2, const MVector &v3)
 
static Self Identity (void)
 
static Self Zero (void)
 
static Self Diagonal (const MVector &v)
 
static Self Sym3 (const MVector &v)
 
static Self AntiSym3 (const MVector &v)
 
static Self Rodrigues (const MVector &rot)
 

Friends

Self operator- (const Self &vb)
 
Self operator * (const VType &k, const Self &mb)
 
std::ostream & operator<< (std::ostream &out, const Self &mb)
 

Detailed Description

template<class VType>
class Matrix3x3< VType >

Definition at line 34 of file matrix3x3-inl.h.


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