NW4F Sys
Loading...
Searching...
No Matches
nw::math::MTX44 Struct Reference

#include <math_Matrix44.h>

Inherits nw::math::MTX44_.

Public Types

typedef MTX44 self_type
typedef f32 value_type

Public Member Functions

 MTX44 ()
 MTX44 (const f32 *p)
 MTX44 (const MTX34 &rhs)
 MTX44 (const MTX44 &rhs)
MTX44operator= (const MTX44 &other)=default
 MTX44 (f32 x00, f32 x01, f32 x02, f32 x03, f32 x10, f32 x11, f32 x12, f32 x13, f32 x20, f32 x21, f32 x22, f32 x23, f32 x30, f32 x31, f32 x32, f32 x33)
 operator f32 * ()
 operator const f32 * () const
f32 * ToF32 ()
const f32 * ToF32 () const
template<typename ToPtr>
ToPtr Cast ()
template<typename ToPtr>
ToPtr Cast () const
VEC4GetRow (int index)
const VEC4GetRow (int index) const
VEC4 GetColumn (int index) const
void SetColumn (int index, const VEC4 &column)
self_typeoperator*= (const self_type &rhs)
self_typeoperator+= (const self_type &rhs)
self_typeoperator-= (const self_type &rhs)
self_typeoperator*= (f32 x)
self_typeoperator/= (f32 x)
self_type operator+ () const
self_type operator- () const
self_type operator+ (const self_type &rhs) const
self_type operator- (const self_type &rhs) const
self_type operator* (f32 x) const
self_type operator/ (f32 x) const
self_typeTranspose ()
self_typeSetIdentity ()
self_typeSetInverse (const MTX44 &mtx)
self_typeInverse ()
self_typeSetMult (const MTX44 &lhs, const MTX44 &rhs)
self_typeSetScale (const VEC3 &scale)
self_typeSetTranslate (const VEC3 &translate)
self_typeSetRotateXyz (const VEC3 &rotate)
self_typeSetRotate (const VEC3 &axis, f32 theta)
self_typeSetFrustum (f32 l, f32 r, f32 b, f32 t, f32 n, f32 far, PivotDirection pivot=PIVOT_NONE)
self_typeSetOrtho (f32 l, f32 r, f32 b, f32 t, f32 n, f32 far, PivotDirection pivot=PIVOT_NONE)
self_typeSetPerspective (f32 fovyRad, f32 aspect, f32 n, f32 far, PivotDirection pivot=PIVOT_NONE)
bool operator== (const self_type &rhs) const
bool operator!= (const self_type &rhs) const
bool IsIdentity () const

Static Public Member Functions

static const MTX44Identity ()
template<typename FromPtr>
static MTX44CastFrom (FromPtr *fromPtr)
template<typename FromPtr>
static const MTX44CastFrom (const FromPtr *fromPtr)
template<typename FromPtr>
static MTX44CastFrom (FromPtr &fromPtr)
template<typename FromPtr>
static const MTX44CastFrom (const FromPtr &fromPtr)

Static Public Attributes

static const int ROW_COUNT = 4
static const int COLUMN_COUNT = 4

Additional Inherited Members

Public Attributes inherited from nw::math::MTX44_
union { 
   struct { 
      f32   _00 
      f32   _01 
      f32   _02 
      f32   _03 
      f32   _10 
      f32   _11 
      f32   _12 
      f32   _13 
      f32   _20 
      f32   _21 
      f32   _22 
      f32   _23 
      f32   _30 
      f32   _31 
      f32   _32 
      f32   _33 
   } 
   BaseData   f 
   f32   m [4][4] 
   f32   a [16] 
   VEC4_   v [4] 
}; 

Member Typedef Documentation

◆ self_type

◆ value_type

Constructor & Destructor Documentation

◆ MTX44() [1/5]

nw::math::MTX44::MTX44 ( )
inline

◆ MTX44() [2/5]

nw::math::MTX44::MTX44 ( const f32 * p)
inlineexplicit

◆ MTX44() [3/5]

nw::math::MTX44::MTX44 ( const MTX34 & rhs)
inlineexplicit

◆ MTX44() [4/5]

nw::math::MTX44::MTX44 ( const MTX44 & rhs)
inline

◆ MTX44() [5/5]

nw::math::MTX44::MTX44 ( f32 x00,
f32 x01,
f32 x02,
f32 x03,
f32 x10,
f32 x11,
f32 x12,
f32 x13,
f32 x20,
f32 x21,
f32 x22,
f32 x23,
f32 x30,
f32 x31,
f32 x32,
f32 x33 )
inline

Member Function Documentation

◆ Identity()

const MTX44 & nw::math::MTX44::Identity ( )
inlinestatic

◆ operator=()

MTX44 & nw::math::MTX44::operator= ( const MTX44 & other)
default

◆ operator f32 *()

nw::math::MTX44::operator f32 * ( )
inline

◆ operator const f32 *()

nw::math::MTX44::operator const f32 * ( ) const
inline

◆ ToF32() [1/2]

f32 * nw::math::MTX44::ToF32 ( )
inline

◆ ToF32() [2/2]

const f32 * nw::math::MTX44::ToF32 ( ) const
inline

◆ Cast() [1/2]

template<typename ToPtr>
ToPtr nw::math::MTX44::Cast ( )
inline

◆ Cast() [2/2]

template<typename ToPtr>
ToPtr nw::math::MTX44::Cast ( ) const
inline

◆ CastFrom() [1/4]

template<typename FromPtr>
MTX44 * nw::math::MTX44::CastFrom ( FromPtr * fromPtr)
inlinestatic

◆ CastFrom() [2/4]

template<typename FromPtr>
const MTX44 * nw::math::MTX44::CastFrom ( const FromPtr * fromPtr)
inlinestatic

◆ CastFrom() [3/4]

template<typename FromPtr>
MTX44 & nw::math::MTX44::CastFrom ( FromPtr & fromPtr)
inlinestatic

◆ CastFrom() [4/4]

template<typename FromPtr>
const MTX44 & nw::math::MTX44::CastFrom ( const FromPtr & fromPtr)
inlinestatic

◆ GetRow() [1/2]

VEC4 & nw::math::MTX44::GetRow ( int index)
inline

◆ GetRow() [2/2]

const VEC4 & nw::math::MTX44::GetRow ( int index) const
inline

◆ GetColumn()

VEC4 nw::math::MTX44::GetColumn ( int index) const
inline

◆ SetColumn()

void nw::math::MTX44::SetColumn ( int index,
const VEC4 & column )
inline

◆ operator*=() [1/2]

self_type & nw::math::MTX44::operator*= ( const self_type & rhs)
inline

◆ operator+=()

self_type & nw::math::MTX44::operator+= ( const self_type & rhs)
inline

◆ operator-=()

self_type & nw::math::MTX44::operator-= ( const self_type & rhs)
inline

◆ operator*=() [2/2]

self_type & nw::math::MTX44::operator*= ( f32 x)
inline

◆ operator/=()

self_type & nw::math::MTX44::operator/= ( f32 x)
inline

◆ operator+() [1/2]

self_type nw::math::MTX44::operator+ ( ) const
inline

◆ operator-() [1/2]

self_type nw::math::MTX44::operator- ( ) const
inline

◆ operator+() [2/2]

self_type nw::math::MTX44::operator+ ( const self_type & rhs) const
inline

◆ operator-() [2/2]

self_type nw::math::MTX44::operator- ( const self_type & rhs) const
inline

◆ operator*()

self_type nw::math::MTX44::operator* ( f32 x) const
inline

◆ operator/()

self_type nw::math::MTX44::operator/ ( f32 x) const
inline

◆ Transpose()

self_type & nw::math::MTX44::Transpose ( )
inline

◆ SetIdentity()

self_type & nw::math::MTX44::SetIdentity ( )
inline

◆ SetInverse()

self_type & nw::math::MTX44::SetInverse ( const MTX44 & mtx)
inline

◆ Inverse()

self_type & nw::math::MTX44::Inverse ( )
inline

◆ SetMult()

self_type & nw::math::MTX44::SetMult ( const MTX44 & lhs,
const MTX44 & rhs )
inline

◆ SetScale()

self_type & nw::math::MTX44::SetScale ( const VEC3 & scale)
inline

◆ SetTranslate()

self_type & nw::math::MTX44::SetTranslate ( const VEC3 & translate)
inline

◆ SetRotateXyz()

self_type & nw::math::MTX44::SetRotateXyz ( const VEC3 & rotate)
inline

◆ SetRotate()

self_type & nw::math::MTX44::SetRotate ( const VEC3 & axis,
f32 theta )
inline

◆ SetFrustum()

self_type & nw::math::MTX44::SetFrustum ( f32 l,
f32 r,
f32 b,
f32 t,
f32 n,
f32 far,
PivotDirection pivot = PIVOT_NONE )
inline

◆ SetOrtho()

self_type & nw::math::MTX44::SetOrtho ( f32 l,
f32 r,
f32 b,
f32 t,
f32 n,
f32 far,
PivotDirection pivot = PIVOT_NONE )
inline

◆ SetPerspective()

self_type & nw::math::MTX44::SetPerspective ( f32 fovyRad,
f32 aspect,
f32 n,
f32 far,
PivotDirection pivot = PIVOT_NONE )
inline

◆ operator==()

bool nw::math::MTX44::operator== ( const self_type & rhs) const
inline

◆ operator!=()

bool nw::math::MTX44::operator!= ( const self_type & rhs) const
inline

◆ IsIdentity()

bool nw::math::MTX44::IsIdentity ( ) const
inline

Member Data Documentation

◆ ROW_COUNT

const int nw::math::MTX44::ROW_COUNT = 4
static

◆ COLUMN_COUNT

const int nw::math::MTX44::COLUMN_COUNT = 4
static