TalanSoft Toolkits  201707
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Member Functions | Static Public Member Functions | List of all members
XMatrix< N, M, T > Struct Template Reference

Public Member Functions

 XMatrix ()
 
 XMatrix (const T &v)
 
 XMatrix (const T &a00, const T &a01, const T &a02, const T &a03, const T &a10, const T &a11, const T &a12, const T &a13, const T &a20, const T &a21, const T &a22, const T &a23, const T &a30, const T &a31, const T &a32, const T &a33)
 
 XMatrix (const T &a00, const T &a01, const T &a02, const T &a10, const T &a11, const T &a12, const T &a20, const T &a21, const T &a22)
 
 XMatrix (const XMatrix &m)
 
 XMatrix (const XMatrix< N, 1, T > &xv, const XMatrix< N, 1, T > &yv, const XMatrix< N, 1, T > &zv)
 
 XMatrix (const XMatrix< N, 1, T > &xv, const XMatrix< N, 1, T > &yv, const XMatrix< N, 1, T > &zv, const XMatrix< N, 1, T > &wv)
 
 XMatrix (const T &xv, const T &yv, const T &zv, const T &wv)
 
 XMatrix (const sVec4< T > &v)
 
 XMatrix (const T &xv, const T &yv, const T &zv)
 
 XMatrix (const sVec3< T > &v)
 
 XMatrix (const T &xv, const T &yv)
 
 XMatrix (const sVec2< T > &v)
 
 operator const sVec2< T > & () const
 
 operator sVec2< T > & ()
 
 operator const sVec3< T > & () const
 
 operator sVec3< T > & ()
 
 operator const sVec4< T > & () const
 
 operator sVec4< T > & ()
 
 operator const sMatrix< T > & () const
 
 operator sMatrix< T > & ()
 
 operator XMatrix< 2, 1, T > ()
 
 operator XMatrix< 3, 1, T > ()
 
 operator XMatrix< 4, 1, T > ()
 
XMatrixoperator= (const XMatrix &m)
 
const T & operator() (const tU32 i, const tU32 j) const
 
T & operator() (const tU32 i, const tU32 j)
 
 ImplementSpecializedConcat (1) ImplementSpecializedConcat(2) ImplementSpecializedConcat(3) ImplementSpecializedConcat(4) ImplementSpecializedConcat(5) ImplementSpecializedConcat(6) ImplementSpecializedConcat(7) ImplementSpecializedConcat(8) ImplementSpecializedConcat(9) inline XMatrix<N
 
Cross (const XMatrix< N, 1, T > &m)
 
const T Dot (const XMatrix &m) const
 
const XMatrix operator* (const XMatrix &m) const
 
const XMatrix operator* (const T &value) const
 
const XMatrix operator*= (const XMatrix &m)
 
const XMatrix operator*= (const T &value)
 
const XMatrix operator/ (const XMatrix &m) const
 
const XMatrix operator/ (const T &value) const
 
const XMatrix InverseDivide (const T &value) const
 
const XMatrix operator/= (const XMatrix &m)
 
const XMatrix operator/= (const T &value)
 
const XMatrix operator+ (const XMatrix &m) const
 
const XMatrix operator+ (const T &value) const
 
const XMatrix operator+= (const XMatrix &m)
 
const XMatrix operator+= (const T &value)
 
const XMatrix operator- () const
 
const XMatrix operator- (const XMatrix &m) const
 
const XMatrix operator- (const T &value) const
 
const XMatrix InverseSubtract (const T &value) const
 
const XMatrix operator-= (const XMatrix &m)
 
const XMatrix operator-= (const T &value)
 
Total () const
 
const bool operator== (const XMatrix &m) const
 
const bool operator!= (const XMatrix &m) const
 
const bool operator< (const XMatrix &m) const
 
const bool operator<= (const XMatrix &m) const
 
const bool operator> (const XMatrix &m) const
 
const bool operator>= (const XMatrix &m) const
 
XMatrix GenConvertedType (const tBool rowColumnSwap=eTrue, const tBool leftRightSwap=eFalse) const
 
void Transpose ()
 
Determinant ()
 
void Invert ()
 
void Fill (const T &value)
 
XMatrix< N, 1, T > GetVecX () const
 
XMatrix< N, 1, T > GetVecY () const
 
XMatrix< N, 1, T > GetVecZ () const
 
XMatrix< N, 1, T > GetVecW () const
 
void SetVecX (const XMatrix< N, 1, T > &m)
 
void SetVecY (const XMatrix< N, 1, T > &m)
 
void SetVecZ (const XMatrix< N, 1, T > &m)
 
void SetVecW (const XMatrix< N, 1, T > &m)
 
const T LengthSquared () const
 
const T Length () const
 
void SetLength (const T &len)
 
Distance (const XMatrix &m) const
 
void Normalize ()
 
void OrthoNormalize ()
 
XMatrix< N, M, T > Abs () const
 
const T & X () const
 
T & X ()
 
const T & Y () const
 
T & Y ()
 
const T & Z () const
 
T & Z ()
 
const T & W () const
 
T & W ()
 
const T & R () const
 
T & R ()
 
const T & G () const
 
T & G ()
 
const T & B () const
 
T & B ()
 
const T & A () const
 
T & A ()
 
const T & Phi () const
 
T & Phi ()
 
const T & Theta () const
 
T & Theta ()
 
const T & Rho () const
 
T & Rho ()
 
const T * Data () const
 
T * Data ()
 
const T & El (tU32 i) const
 
T & El (tU32 i)
 
tU32 GetWidth () const
 
tU32 GetHeight () const
 

Static Public Member Functions

static XMatrix Zero ()
 
static XMatrix Identity ()
 
static XMatrix Rotation2D (const T &theta)
 
static XMatrix RotationX (const T &theta)
 
static XMatrix RotationY (const T &theta)
 
static XMatrix RotationZ (const T &theta)
 
static XMatrix Scale (const XMatrix< N, 1, T > &m)
 
static XMatrix Translation (const XMatrix< N, 1, T > &m)
 
static XMatrix Shear (const T x, const T y)
 

Constructor & Destructor Documentation

XMatrix ( )
XMatrix ( const T &  v)
XMatrix ( const T &  a00,
const T &  a01,
const T &  a02,
const T &  a03,
const T &  a10,
const T &  a11,
const T &  a12,
const T &  a13,
const T &  a20,
const T &  a21,
const T &  a22,
const T &  a23,
const T &  a30,
const T &  a31,
const T &  a32,
const T &  a33 
)
XMatrix ( const T &  a00,
const T &  a01,
const T &  a02,
const T &  a10,
const T &  a11,
const T &  a12,
const T &  a20,
const T &  a21,
const T &  a22 
)
XMatrix ( const XMatrix< N, M, T > &  m)
XMatrix ( const XMatrix< N, 1, T > &  xv,
const XMatrix< N, 1, T > &  yv,
const XMatrix< N, 1, T > &  zv 
)
XMatrix ( const XMatrix< N, 1, T > &  xv,
const XMatrix< N, 1, T > &  yv,
const XMatrix< N, 1, T > &  zv,
const XMatrix< N, 1, T > &  wv 
)
XMatrix ( const T &  xv,
const T &  yv,
const T &  zv,
const T &  wv 
)
XMatrix ( const sVec4< T > &  v)
XMatrix ( const T &  xv,
const T &  yv,
const T &  zv 
)
XMatrix ( const sVec3< T > &  v)
XMatrix ( const T &  xv,
const T &  yv 
)
XMatrix ( const sVec2< T > &  v)

Member Function Documentation

operator const sVec2< T > & ( ) const
operator sVec2< T > & ( )
operator const sVec3< T > & ( ) const
operator sVec3< T > & ( )
operator const sVec4< T > & ( ) const
operator sVec4< T > & ( )
operator const sMatrix< T > & ( ) const
operator sMatrix< T > & ( )
operator XMatrix< 2, 1, T > ( )
operator XMatrix< 3, 1, T > ( )
operator XMatrix< 4, 1, T > ( )
static XMatrix Zero ( )
static
XMatrix& operator= ( const XMatrix< N, M, T > &  m)
const T& operator() ( const tU32  i,
const tU32  j 
) const
T& operator() ( const tU32  i,
const tU32  j 
)
ImplementSpecializedConcat ( )
T Cross ( const XMatrix< N, 1, T > &  m)
const T Dot ( const XMatrix< N, M, T > &  m) const
const XMatrix operator* ( const XMatrix< N, M, T > &  m) const
const XMatrix operator* ( const T &  value) const
const XMatrix operator*= ( const XMatrix< N, M, T > &  m)
const XMatrix operator*= ( const T &  value)
const XMatrix operator/ ( const XMatrix< N, M, T > &  m) const
const XMatrix operator/ ( const T &  value) const
const XMatrix InverseDivide ( const T &  value) const
const XMatrix operator/= ( const XMatrix< N, M, T > &  m)
const XMatrix operator/= ( const T &  value)
const XMatrix operator+ ( const XMatrix< N, M, T > &  m) const
const XMatrix operator+ ( const T &  value) const
const XMatrix operator+= ( const XMatrix< N, M, T > &  m)
const XMatrix operator+= ( const T &  value)
const XMatrix operator- ( ) const
const XMatrix operator- ( const XMatrix< N, M, T > &  m) const
const XMatrix operator- ( const T &  value) const
const XMatrix InverseSubtract ( const T &  value) const
const XMatrix operator-= ( const XMatrix< N, M, T > &  m)
const XMatrix operator-= ( const T &  value)
T Total ( ) const
const bool operator== ( const XMatrix< N, M, T > &  m) const
const bool operator!= ( const XMatrix< N, M, T > &  m) const
const bool operator< ( const XMatrix< N, M, T > &  m) const
const bool operator<= ( const XMatrix< N, M, T > &  m) const
const bool operator> ( const XMatrix< N, M, T > &  m) const
const bool operator>= ( const XMatrix< N, M, T > &  m) const
XMatrix GenConvertedType ( const tBool  rowColumnSwap = eTrue,
const tBool  leftRightSwap = eFalse 
) const
void Transpose ( )
T Determinant ( )
void Invert ( )
void Fill ( const T &  value)
static XMatrix Identity ( )
static
static XMatrix Rotation2D ( const T &  theta)
static
static XMatrix RotationX ( const T &  theta)
static
static XMatrix RotationY ( const T &  theta)
static
static XMatrix RotationZ ( const T &  theta)
static
static XMatrix Scale ( const XMatrix< N, 1, T > &  m)
static
static XMatrix Translation ( const XMatrix< N, 1, T > &  m)
static
static XMatrix Shear ( const T  x,
const T  y 
)
static
XMatrix<N,1,T> GetVecX ( ) const
XMatrix<N,1,T> GetVecY ( ) const
XMatrix<N, 1, T> GetVecZ ( ) const
XMatrix<N,1,T> GetVecW ( ) const
void SetVecX ( const XMatrix< N, 1, T > &  m)
void SetVecY ( const XMatrix< N, 1, T > &  m)
void SetVecZ ( const XMatrix< N, 1, T > &  m)
void SetVecW ( const XMatrix< N, 1, T > &  m)
const T LengthSquared ( ) const
const T Length ( ) const
void SetLength ( const T &  len)
T Distance ( const XMatrix< N, M, T > &  m) const
void Normalize ( )
void OrthoNormalize ( )
XMatrix<N,M,T> Abs ( ) const
const T& X ( ) const
T& X ( )
const T& Y ( ) const
T& Y ( )
const T& Z ( ) const
T& Z ( )
const T& W ( ) const
T& W ( )
const T& R ( ) const
T& R ( )
const T& G ( ) const
T& G ( )
const T& B ( ) const
T& B ( )
const T& A ( ) const
T& A ( )
const T& Phi ( ) const
T& Phi ( )
const T& Theta ( ) const
T& Theta ( )
const T& Rho ( ) const
T& Rho ( )
const T* Data ( ) const
T* Data ( )
const T& El ( tU32  i) const
T& El ( tU32  i)
tU32 GetWidth ( ) const
tU32 GetHeight ( ) const