RavEngine
Loading...
Searching...
No Matches
physx::PxMat44T< Type > Class Template Reference

4x4 matrix class More...

#include <PxMat44.h>

Public Member Functions

PX_CUDA_CALLABLE PX_INLINE PxMat44T ()
 Default constructor.
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T (PxIDENTITY)
 identity constructor
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T (PxZERO)
 zero constructor
 
PX_CUDA_CALLABLE PxMat44T (const PxVec4T< Type > &col0, const PxVec4T< Type > &col1, const PxVec4T< Type > &col2, const PxVec4T< Type > &col3)
 Construct from four 4-vectors.
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T (Type r)
 constructor that generates a multiple of the identity matrix
 
PX_CUDA_CALLABLE PxMat44T (const PxVec3T< Type > &col0, const PxVec3T< Type > &col1, const PxVec3T< Type > &col2, const PxVec3T< Type > &col3)
 Construct from three base vectors and a translation.
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T (Type values[])
 Construct from Type[16].
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T (const PxQuatT< Type > &q)
 Construct from a quaternion.
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T (const PxVec4T< Type > &diagonal)
 Construct from a diagonal vector.
 
PX_CUDA_CALLABLE PxMat44T (const PxMat33T< Type > &axes, const PxVec3T< Type > &position)
 Construct from Mat33 and a translation.
 
PX_CUDA_CALLABLE PxMat44T (const PxTransform &t)
 
PX_CUDA_CALLABLE PX_INLINE bool operator== (const PxMat44T &m) const
 returns true if the two matrices are exactly equal
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T (const PxMat44T &other)
 Copy constructor.
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T & operator= (const PxMat44T &other)
 Assignment operator.
 
PX_CUDA_CALLABLE PX_INLINE const PxMat44T getTranspose () const
 Get transposed matrix.
 
PX_CUDA_CALLABLE PX_INLINE const PxMat44T operator- () const
 Unary minus.
 
PX_CUDA_CALLABLE PX_INLINE const PxMat44T operator+ (const PxMat44T &other) const
 Add.
 
PX_CUDA_CALLABLE PX_INLINE const PxMat44T operator- (const PxMat44T &other) const
 Subtract.
 
PX_CUDA_CALLABLE PX_INLINE const PxMat44T operator* (Type scalar) const
 Scalar multiplication.
 
PX_CUDA_CALLABLE PX_INLINE const PxMat44T operator* (const PxMat44T &other) const
 Matrix multiplication.
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T & operator+= (const PxMat44T &other)
 Equals-add.
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T & operator-= (const PxMat44T &other)
 Equals-sub.
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T & operator*= (Type scalar)
 Equals scalar multiplication.
 
PX_CUDA_CALLABLE PX_INLINE PxMat44T & operator*= (const PxMat44T &other)
 Equals matrix multiplication.
 
PX_CUDA_CALLABLE PX_FORCE_INLINE Type operator() (PxU32 row, PxU32 col) const
 Element access, mathematical way!
 
PX_CUDA_CALLABLE PX_FORCE_INLINE Type & operator() (PxU32 row, PxU32 col)
 Element access, mathematical way!
 
PX_CUDA_CALLABLE PX_INLINE const PxVec4T< Type > transform (const PxVec4T< Type > &other) const
 Transform vector by matrix, equal to v' = M*v.
 
PX_CUDA_CALLABLE PX_INLINE const PxVec3T< Type > transform (const PxVec3T< Type > &other) const
 Transform vector by matrix, equal to v' = M*v.
 
PX_CUDA_CALLABLE PX_INLINE const PxVec4T< Type > rotate (const PxVec4T< Type > &other) const
 Rotate vector by matrix, equal to v' = M*v.
 
PX_CUDA_CALLABLE PX_INLINE const PxVec3T< Type > rotate (const PxVec3T< Type > &other) const
 Rotate vector by matrix, equal to v' = M*v.
 
PX_CUDA_CALLABLE PX_INLINE const PxVec3T< Type > getBasis (PxU32 num) const
 
PX_CUDA_CALLABLE PX_INLINE const PxVec3T< Type > getPosition () const
 
PX_CUDA_CALLABLE PX_INLINE void setPosition (const PxVec3T< Type > &position)
 
PX_CUDA_CALLABLE PX_FORCE_INLINE const Type * front () const
 
PX_CUDA_CALLABLE PX_FORCE_INLINE PxVec4T< Type > & operator[] (PxU32 num)
 
PX_CUDA_CALLABLE PX_FORCE_INLINE const PxVec4T< Type > & operator[] (PxU32 num) const
 
PX_CUDA_CALLABLE PX_INLINE void scale (const PxVec4T< Type > &p)
 
PX_CUDA_CALLABLE PX_INLINE const PxMat44T inverseRT (void) const
 
PX_CUDA_CALLABLE PX_INLINE bool isFinite () const
 

Public Attributes

PxVec4T< Type > column0
 
PxVec4T< Type > column1
 
PxVec4T< Type > column2
 
PxVec4T< Type > column3
 

Friends

template<class Type2 >
PxMat44T< Type2 > operator* (Type2, const PxMat44T< Type2 > &)
 

Detailed Description

template<class Type>
class physx::PxMat44T< Type >

4x4 matrix class

This class is layout-compatible with D3D and OpenGL matrices. More notes on layout are given in the PxMat33

See also
PxMat33 PxTransform

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