Public Methods |
| Matrix () |
| Matrix (const Matrix &other) |
| Matrix (float const *const def) |
| Matrix (float a00, float a01, float a02, float a03, float a10, float a11, float a12, float a13, float a20, float a21, float a22, float a23, float a30, float a31, float a32, float a33) |
virtual Object * | cloneType () const |
| Clone the type of an object, with Object* return type.
|
virtual Object * | clone (const CopyOp &) const |
| Clone the an object, with Object* return type.
|
virtual bool | isSameKindAs (const Object *obj) const |
virtual const char * | libraryName () const |
| return the name of the object's library.
|
virtual const char * | className () const |
| return the name of the object's class type.
|
virtual | ~Matrix () |
int | compare (const Matrix &m) const |
bool | operator< (const Matrix &m) const |
bool | operator== (const Matrix &m) const |
bool | operator!= (const Matrix &m) const |
float & | operator() (int row, int col) |
float | operator() (int row, int col) const |
const bool | valid () const |
const bool | isNaN () const |
Matrix & | operator= (const Matrix &other) |
void | set (const Matrix &other) |
void | set (float const *const ptr) |
void | set (float a00, float a01, float a02, float a03, float a10, float a11, float a12, float a13, float a20, float a21, float a22, float a23, float a30, float a31, float a32, float a33) |
float * | ptr () |
const float * | ptr () const |
void | makeIdentity () |
void | makeScale (const Vec3 &) |
void | makeScale (float, float, float) |
void | makeTranslate (const Vec3 &) |
void | makeTranslate (float, float, float) |
void | makeRotate (const Vec3 &from, const Vec3 &to) |
void | makeRotate (float angle, const Vec3 &axis) |
void | makeRotate (float angle, float x, float y, float z) |
void | makeRotate (const Quat &) |
void | makeRotate (float angle1, const Vec3 &axis1, float angle2, const Vec3 &axis2, float angle3, const Vec3 &axis3) |
void | makeOrtho (const double left, const double right, const double bottom, const double top, const double zNear, const double zFar) |
| Set to a orthographic projection.
|
void | makeOrtho2D (const double left, const double right, const double bottom, const double top) |
| Set to a 2D orthographic projection.
|
void | makeFrustum (const double left, const double right, const double bottom, const double top, const double zNear, const double zFar) |
| Set to a perspective projection.
|
void | makePerspective (const double fovy, const double aspectRatio, const double zNear, const double zFar) |
| Set to a symmetrical perspective projection, See gluPerspective for further details.
|
void | makeLookAt (const Vec3 &eye, const Vec3 ¢er, const Vec3 &up) |
| Set to the position and orientation as per a camera, using the same convention as gluLookAt.
|
bool | invert (const Matrix &) |
Vec3 | preMult (const Vec3 &v) const |
Vec3 | postMult (const Vec3 &v) const |
Vec3 | operator * (const Vec3 &v) const |
Vec4 | preMult (const Vec4 &v) const |
Vec4 | postMult (const Vec4 &v) const |
Vec4 | operator * (const Vec4 &v) const |
void | setTrans (float tx, float ty, float tz) |
void | setTrans (const Vec3 &v) |
Vec3 | getTrans () const |
Vec3 | getScale () const |
void | mult (const Matrix &, const Matrix &) |
void | preMult (const Matrix &) |
void | postMult (const Matrix &) |
void | operator *= (const Matrix &other) |
Matrix | operator * (const Matrix &m) const |
Static Public Methods |
Matrix | identity (void) |
Matrix | scale (const Vec3 &sv) |
Matrix | scale (float sx, float sy, float sz) |
Matrix | translate (const Vec3 &dv) |
Matrix | translate (float x, float y, float z) |
Matrix | rotate (const Vec3 &from, const Vec3 &to) |
Matrix | rotate (float angle, float x, float y, float z) |
Matrix | rotate (float angle, const Vec3 &axis) |
Matrix | rotate (float angle1, const Vec3 &axis1, float angle2, const Vec3 &axis2, float angle3, const Vec3 &axis3) |
Matrix | rotate (const Quat &quat) |
Matrix | inverse (const Matrix &matrix) |
Matrix | ortho (const double left, const double right, const double bottom, const double top, const double zNear, const double zFar) |
| Create a orthographic projection.
|
Matrix | ortho2D (const double left, const double right, const double bottom, const double top) |
| Create a 2D orthographic projection.
|
Matrix | frustum (const double left, const double right, const double bottom, const double top, const double zNear, const double zFar) |
| Create a perspective projection.
|
Matrix | perspective (const double fovy, const double aspectRatio, const double zNear, const double zFar) |
| Create a symmetrical perspective projection, See gluPerspective for further details.
|
Matrix | lookAt (const Vec3 &eye, const Vec3 ¢er, const Vec3 &up) |
| Create the position and orientation as per a camera, using the same convention as gluLookAt.
|
Vec3 | transform3x3 (const Vec3 &v, const Matrix &m) |
| apply apply an 3x3 transform of v*M[0..2,0..2]
|
Vec3 | transform3x3 (const Matrix &m, const Vec3 &v) |
| apply apply an 3x3 transform of M[0..2,0..2]*v
|