#include <iso_math_matrix4.h>
Inherits iso::math::Matrix< Type >< Type >.
Inheritance diagram for iso::math::Matrix4< Type >:
Public Member Functions | |
Matrix4 () | |
create zero matrix | |
Matrix4 (Type pValue) | |
create matrix containing identical values | |
Matrix4 (Type *pValues) | |
create matrix | |
Matrix4 (Type p00, Type p01, Type p02, Type p03, Type p10, Type p11, Type p12, Type p13, Type p20, Type p21, Type p22, Type p23, Type p30, Type p31, Type p32, Type p33) | |
create matrix | |
Matrix4 (const Vector4< Type > &pV0, const Vector4< Type > &pV1, const Vector4< Type > &pV2, const Vector4< Type > &pV3, bool pColumnMode=false) | |
create matrix | |
Matrix4 (const Matrix4< Type > &pMatrix) | |
copy constructor | |
template<class Type2> | |
Matrix4 (const Matrix4< Type2 > &pMatrix) | |
copy constructor | |
Matrix4 (const Matrix< Type > &pMatrix) throw (MathException) | |
copy constructor | |
virtual | ~Matrix4 () |
destructor | |
void | set (Type p00, Type p01, Type p02, Type p03, Type p10, Type p11, Type p12, Type p13, Type p20, Type p21, Type p22, Type p23, Type p30, Type p31, Type p32, Type p33) |
set matrix values | |
void | set (const Vector4< Type > &pV0, const Vector4< Type > &pV1, const Vector4< Type > &pV2, const Vector4< Type > &pV3, bool pColumnMode=false) |
set matrix values | |
void | rotateX (const Type pAngle) |
rotate around x axis | |
void | rotateY (const Type pAngle) |
rotate around y axis | |
void | rotateZ (const Type pAngle) |
rotate around z axis | |
void | rotate (Type pAngle, const Vector3< Type > &pAxis) |
rotate around arbitrary axis | |
void | scale (const Type pScale[3]) |
change non uniform scale | |
void | scale (const Type pScaleX, const Type pScaleY, const Type pScaleZ) |
change non uniform scale | |
void | scale (const Vector3< Type > &pScale) |
change non uniform scale | |
void | translate (const Type pTransX, const Type pTransY, const Type pTransZ) |
change translation | |
void | translate (const Type pTrans[3]) |
change translation | |
void | translate (const Vector3< Type > &pTrans) |
change translation | |
void | setRotationX (const Type pAngle) |
set rotation around x axis | |
void | setRotationY (const Type pAngle) |
set rotation around y axis | |
void | setRotationZ (const Type pAngle) |
set rotation around z axis | |
void | setRotation (Type pAngle, const Vector3< Type > &pAxis) |
set rotation around arbitrary axis | |
void | setScale (const Type pScale[3]) |
set non uniform scale | |
void | setScale (const Type pScaleX, const Type pScaleY, const Type pScaleZ) |
set non uniform scale | |
void | setScale (const Vector3< Type > &pScale) |
set non uniform scale | |
void | setTranslation (const Type pTransX, const Type pTransY, const Type pTransZ) |
set translation | |
void | setTranslation (const Type pTrans[3]) |
set translation | |
void | setTranslation (const Vector3< Type > &pTrans) |
set translation | |
Static Public Attributes | |
static const Matrix4< Type > | ZERO |
zero matrix | |
static const Matrix4< Type > | IDENTITY |
identity matrix |
class
Created by Daniel Bisig on 7/16/06. Copyright 2006 Daniel Bisig All rights reserved.
iso::math::Matrix4< Type >::Matrix4 | ( | ) |
create zero matrix
iso::math::Matrix4< Type >::Matrix4 | ( | Type | pValue | ) |
create matrix containing identical values
pValue | value |
iso::math::Matrix4< Type >::Matrix4 | ( | Type * | pValues | ) |
create matrix
pValues | values (must be of correct size!) |
iso::math::Matrix4< Type >::Matrix4 | ( | Type | p00, | |
Type | p01, | |||
Type | p02, | |||
Type | p03, | |||
Type | p10, | |||
Type | p11, | |||
Type | p12, | |||
Type | p13, | |||
Type | p20, | |||
Type | p21, | |||
Type | p22, | |||
Type | p23, | |||
Type | p30, | |||
Type | p31, | |||
Type | p32, | |||
Type | p33 | |||
) |
create matrix
p00 | value | |
p01 | value | |
p02 | value | |
p03 | value | |
p10 | value | |
p11 | value | |
p12 | value | |
p13 | value | |
p20 | value | |
p21 | value | |
p22 | value | |
p23 | value | |
p30 | value | |
p31 | value | |
p32 | value | |
p33 | value |
iso::math::Matrix4< Type >::Matrix4 | ( | const Vector4< Type > & | pV0, | |
const Vector4< Type > & | pV1, | |||
const Vector4< Type > & | pV2, | |||
const Vector4< Type > & | pV3, | |||
bool | pColumnMode = false | |||
) |
create matrix
pV0 | vector | |
pV1 | vector | |
pV2 | vector | |
pV3 | vector | |
pColumnMode | true: vectors represent matrix columns false: vectors represent matrix rows |
iso::math::Matrix4< Type >::Matrix4 | ( | const Matrix4< Type > & | pMatrix | ) |
copy constructor
pMatrix | matrix |
iso::math::Matrix4< Type >::Matrix4 | ( | const Matrix4< Type2 > & | pMatrix | ) |
copy constructor
pMatrix | matrix |
iso::math::Matrix4< Type >::Matrix4 | ( | const Matrix< Type > & | pMatrix | ) | throw (MathException) |
iso::math::Matrix4< Type >::~Matrix4 | ( | ) | [virtual] |
destructor
void iso::math::Matrix4< Type >::set | ( | Type | p00, | |
Type | p01, | |||
Type | p02, | |||
Type | p03, | |||
Type | p10, | |||
Type | p11, | |||
Type | p12, | |||
Type | p13, | |||
Type | p20, | |||
Type | p21, | |||
Type | p22, | |||
Type | p23, | |||
Type | p30, | |||
Type | p31, | |||
Type | p32, | |||
Type | p33 | |||
) |
set matrix values
p00 | value | |
p01 | value | |
p02 | value | |
p03 | value | |
p10 | value | |
p11 | value | |
p12 | value | |
p13 | value | |
p20 | value | |
p21 | value | |
p22 | value | |
p23 | value | |
p30 | value | |
p31 | value | |
p32 | value | |
p33 | value |
void iso::math::Matrix4< Type >::set | ( | const Vector4< Type > & | pV0, | |
const Vector4< Type > & | pV1, | |||
const Vector4< Type > & | pV2, | |||
const Vector4< Type > & | pV3, | |||
bool | pColumnMode = false | |||
) |
set matrix values
pV0 | vector | |
pV1 | vector | |
pV2 | vector | |
pV3 | vector | |
pColumnMode | true: vectors represent matrix columns false: vectors represent matrix rows |
void iso::math::Matrix4< Type >::rotateX | ( | const Type | pAngle | ) |
rotate around x axis
pAngle | angle of rotation |
void iso::math::Matrix4< Type >::rotateY | ( | const Type | pAngle | ) |
rotate around y axis
pAngle | angle of rotation |
void iso::math::Matrix4< Type >::rotateZ | ( | const Type | pAngle | ) |
rotate around z axis
pAngle | angle of rotation |
void iso::math::Matrix4< Type >::rotate | ( | Type | pAngle, | |
const Vector3< Type > & | pAxis | |||
) |
rotate around arbitrary axis
pAngle | angle of rotation | |
pAxis | axis of rotation |
void iso::math::Matrix4< Type >::scale | ( | const Type | pScale[3] | ) |
change non uniform scale
pScale | non uniform scale |
void iso::math::Matrix4< Type >::scale | ( | const Type | pScaleX, | |
const Type | pScaleY, | |||
const Type | pScaleZ | |||
) |
change non uniform scale
pScaleX | scale along x axis | |
pScaleY | scale along y axis | |
pScaleZ | scale along z axis |
void iso::math::Matrix4< Type >::scale | ( | const Vector3< Type > & | pScale | ) |
change non uniform scale
pScale | non uniform scale |
void iso::math::Matrix4< Type >::translate | ( | const Type | pTransX, | |
const Type | pTransY, | |||
const Type | pTransZ | |||
) |
change translation
pTransX | translation along x axis | |
pTransY | translation along y axis | |
pTransZ | translation along z axis |
void iso::math::Matrix4< Type >::translate | ( | const Type | pTrans[3] | ) |
change translation
pTrans | translation |
void iso::math::Matrix4< Type >::translate | ( | const Vector3< Type > & | pTrans | ) |
change translation
pTrans | translation |
void iso::math::Matrix4< Type >::setRotationX | ( | const Type | pAngle | ) |
set rotation around x axis
pAngle | angle of rotation |
void iso::math::Matrix4< Type >::setRotationY | ( | const Type | pAngle | ) |
set rotation around y axis
pAngle | angle of rotation |
void iso::math::Matrix4< Type >::setRotationZ | ( | const Type | pAngle | ) |
set rotation around z axis
pAngle | angle of rotation |
void iso::math::Matrix4< Type >::setRotation | ( | Type | pAngle, | |
const Vector3< Type > & | pAxis | |||
) |
set rotation around arbitrary axis
pAngle | angle of rotation | |
pAxis | axis of rotation |
void iso::math::Matrix4< Type >::setScale | ( | const Type | pScale[3] | ) |
set non uniform scale
pScale | non uniform scale |
void iso::math::Matrix4< Type >::setScale | ( | const Type | pScaleX, | |
const Type | pScaleY, | |||
const Type | pScaleZ | |||
) |
set non uniform scale
pScaleX | scale along x axis | |
pScaleY | scale along y axis | |
pScaleZ | scale along z axis |
void iso::math::Matrix4< Type >::setScale | ( | const Vector3< Type > & | pScale | ) |
set non uniform scale
pScale | non uniform scale |
void iso::math::Matrix4< Type >::setTranslation | ( | const Type | pTransX, | |
const Type | pTransY, | |||
const Type | pTransZ | |||
) |
set translation
pTransX | translation along x axis | |
pTransY | translation along y axis | |
pTransZ | translation along z axis |
void iso::math::Matrix4< Type >::setTranslation | ( | const Type | pTrans[3] | ) |
set translation
pTrans | translation |
void iso::math::Matrix4< Type >::setTranslation | ( | const Vector3< Type > & | pTrans | ) |
set translation
pTrans | translation |
const Matrix4< Type > iso::math::Matrix4< Type >::ZERO [static] |
zero matrix
const Matrix4< Type > iso::math::Matrix4< Type >::IDENTITY [static] |
identity matrix