RavEngine
Loading...
Searching...
No Matches
physx::PxMat44 Class Reference

4x4 matrix class More...

#include <PxMat44.h>

Collaboration diagram for physx::PxMat44:
[legend]

Public Member Functions

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

Public Attributes

PxVec4 column0
 
PxVec4 column1
 
PxVec4 column2
 
PxVec4 column3
 

Friends

PxMat44 operator* (float, const PxMat44 &)
 

Detailed Description

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 file: