Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members
|
Double-precision 4x4 matrix. More...
#include <FXMat4d.h>
Public Member Functions | |
FXMat4d () | |
Default constructor; value is not initialized. | |
FXMat4d (FXdouble s) | |
Initialize matrix from scalar. | |
FXMat4d (const FXMat3d &s) | |
Initialize with 3x3 rotation and scaling matrix. | |
FXMat4d (const FXMat4d &s) | |
Initialize matrix from another matrix. | |
FXMat4d (const FXdouble s[]) | |
Initialize matrix from array. | |
FXMat4d (FXdouble a, FXdouble b, FXdouble c, FXdouble d) | |
Initialize diagonal matrix. | |
FXMat4d (FXdouble a00, FXdouble a01, FXdouble a02, FXdouble a03, FXdouble a10, FXdouble a11, FXdouble a12, FXdouble a13, FXdouble a20, FXdouble a21, FXdouble a22, FXdouble a23, FXdouble a30, FXdouble a31, FXdouble a32, FXdouble a33) | |
Initialize matrix from components. | |
FXMat4d (const FXVec4d &a, const FXVec4d &b, const FXVec4d &c, const FXVec4d &d) | |
Initialize matrix from four vectors. | |
FXMat4d (const FXQuatd &quat) | |
Initialize matrix from quaternion. | |
FXMat4d & | operator= (FXdouble s) |
Assignment from scalar. | |
FXMat4d & | operator= (const FXMat3d &s) |
Assignment. | |
FXMat4d & | operator= (const FXMat4d &s) |
FXMat4d & | operator= (const FXQuatd &quat) |
Assignment from quaternion. | |
FXMat4d & | operator= (const FXdouble s[]) |
Assignment from array. | |
FXMat4d & | set (FXdouble s) |
Set value from scalar. | |
FXMat4d & | set (const FXMat3d &s) |
Set value from 3x3 rotation and scaling matrix. | |
FXMat4d & | set (const FXMat4d &s) |
Set value from another matrix. | |
FXMat4d & | set (const FXdouble s[]) |
Set value from array. | |
FXMat4d & | set (FXdouble a, FXdouble b, FXdouble c, FXdouble d) |
Set diagonal matrix. | |
FXMat4d & | set (FXdouble a00, FXdouble a01, FXdouble a02, FXdouble a03, FXdouble a10, FXdouble a11, FXdouble a12, FXdouble a13, FXdouble a20, FXdouble a21, FXdouble a22, FXdouble a23, FXdouble a30, FXdouble a31, FXdouble a32, FXdouble a33) |
Set value from components. | |
FXMat4d & | set (const FXVec4d &a, const FXVec4d &b, const FXVec4d &c, const FXVec4d &d) |
Set value from four vectors. | |
FXMat4d & | set (const FXQuatd &quat) |
Set value from quaternion. | |
FXMat4d & | operator+= (const FXMat4d &w) |
Assignment operators. | |
FXMat4d & | operator-= (const FXMat4d &w) |
FXMat4d & | operator*= (const FXMat4d &w) |
FXMat4d & | operator*= (FXdouble w) |
FXMat4d & | operator/= (FXdouble w) |
FXVec4d & | operator[] (FXint i) |
Indexing. | |
const FXVec4d & | operator[] (FXint i) const |
operator FXdouble * () | |
Conversion. | |
operator const FXdouble * () const | |
FXMat4d | operator- () const |
Unary minus. | |
FXMat4d & | identity () |
Set to identity matrix. | |
FXbool | isIdentity () const |
Return true if identity matrix. | |
FXMat4d & | setOrtho (FXdouble xlo, FXdouble xhi, FXdouble ylo, FXdouble yhi, FXdouble zlo, FXdouble zhi) |
Set orthographic projection from view volume. | |
void | getOrtho (FXdouble &xlo, FXdouble &xhi, FXdouble &ylo, FXdouble &yhi, FXdouble &zlo, FXdouble &zhi) const |
Get view volume from orthographic projection. | |
FXMat4d & | setInverseOrtho (FXdouble xlo, FXdouble xhi, FXdouble ylo, FXdouble yhi, FXdouble zlo, FXdouble zhi) |
Set to inverse orthographic projection. | |
FXMat4d & | setFrustum (FXdouble xlo, FXdouble xhi, FXdouble ylo, FXdouble yhi, FXdouble zlo, FXdouble zhi) |
Set to perspective projection from view volume. | |
void | getFrustum (FXdouble &xlo, FXdouble &xhi, FXdouble &ylo, FXdouble &yhi, FXdouble &zlo, FXdouble &zhi) const |
Get view volume from perspective projection. | |
FXMat4d & | setInverseFrustum (FXdouble xlo, FXdouble xhi, FXdouble ylo, FXdouble yhi, FXdouble zlo, FXdouble zhi) |
Set to inverse perspective projection from view volume. | |
FXMat4d & | left () |
Multiply by left-hand matrix. | |
FXMat4d & | rot (const FXMat3d &r) |
Multiply by rotation matrix. | |
FXMat4d & | rot (const FXQuatd &q) |
Multiply by rotation about unit-quaternion. | |
FXMat4d & | rot (const FXVec3d &v, FXdouble c, FXdouble s) |
Multiply by rotation c,s about unit axis. | |
FXMat4d & | rot (const FXVec3d &v, FXdouble phi) |
Multiply by rotation of phi about unit axis. | |
FXMat4d & | xrot (FXdouble c, FXdouble s) |
Multiply by x-rotation. | |
FXMat4d & | xrot (FXdouble phi) |
FXMat4d & | yrot (FXdouble c, FXdouble s) |
Multiply by y-rotation. | |
FXMat4d & | yrot (FXdouble phi) |
FXMat4d & | zrot (FXdouble c, FXdouble s) |
Multiply by z-rotation. | |
FXMat4d & | zrot (FXdouble phi) |
FXMat4d & | look (const FXVec3d &from, const FXVec3d &to, const FXVec3d &up) |
Look at. | |
FXMat4d & | trans (FXdouble tx, FXdouble ty, FXdouble tz) |
Multiply by translation. | |
FXMat4d & | trans (const FXVec3d &v) |
FXMat4d & | scale (FXdouble sx, FXdouble sy, FXdouble sz) |
Multiply by scaling. | |
FXMat4d & | scale (const FXVec3d &v) |
FXMat4d & | scale (FXdouble s) |
FXMat4d & | mirror (const FXVec3d &n) |
Mirror-matrix with plane normal n. | |
FXdouble | det () const |
Determinant. | |
FXMat4d | transpose () const |
Transpose. | |
FXMat4d | invert () const |
Invert. | |
FXMat4d | affineInvert () const |
Invert affine matrix. | |
FXMat4d | rigidInvert () const |
Invert rigid body transform matrix. | |
FXMat3d | normalMatrix () const |
Return normal-transformation matrix. | |
~FXMat4d () | |
Destructor. | |
Protected Attributes | |
FXVec4d | m [4] |
Double-precision 4x4 matrix.
Copyright © 1997-2022 Jeroen van der Zijp |