|
RavEngine
|
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 > &) |
4x4 matrix class
This class is layout-compatible with D3D and OpenGL matrices. More notes on layout are given in the PxMat33