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