Inheritance Graph
graph BT
_Matrix4x4
click _Matrix4x4 "classGeometry_1_1__Matrix4x4"
Description
4*4 matrix.
[ _Matrix4x4 ]
Construction
|
|
|
|
|
_Matrix4x4() |
|
|
|
_Matrix4x4( value_t d0, value_t d1, value_t d2, value_t d3, value_t d4, value_t d5, value_t d6, value_t d7, value_t d8, value_t d9, value_t d10, value_t d11, value_t d12, value_t d13, value_t d14, value_t d15) |
|
|
|
_Matrix4x4(const value_t * data) |
|
|
|
_Matrix4x4(const srt_t & srt) |
|
|
|
_Matrix4x4(const _Matrix3x3 < value_t > & mat) Convert a 3 times 3 matrix to a 4 times 4 matrix by adding a one in the last entry, and zeros in the fourth. |
|
|
|
_Matrix4x4(const vec4_t & v0, const vec4_t & v1, const vec4_t & v2, const vec4_t & v3) |
Modification
|
|
|
|
void |
setIdentity() |
|
|
_Matrix4x4 < value_t > & |
operator+=(const _Matrix4x4 < value_t > & m2) |
|
|
_Matrix4x4 < value_t > & |
operator-=(const _Matrix4x4 < value_t > & m2) |
|
|
_Matrix4x4 < value_t > & |
operator*=(const _Matrix4x4 < value_t > & m2) |
|
|
_Matrix4x4 < value_t > & |
operator*=( value_t d) |
|
|
_Matrix4x4 < value_t > & |
operator/=( value_t d) |
|
|
_Matrix4x4 < value_t > & |
translate( value_t x, value_t y, value_t z) |
|
|
_Matrix4x4 < value_t > & |
translate(const vec3_t & v) |
|
|
_Matrix4x4 & |
scale( value_t sx, value_t sy, value_t sz) |
|
|
_Matrix4x4 & |
scale( value_t s) |
|
|
_Matrix4x4 < value_t > & |
rotate(const angle_t & angle, value_t x, value_t y, value_t z) |
|
|
_Matrix4x4 < value_t > & |
rotate(const angle_t & angle, const vec3_t & axis) |
|
|
_Matrix4x4 < value_t > & |
rotate_deg(const value_t deg, const vec3_t & axis) |
|
|
_Matrix4x4 < value_t > & |
rotate_deg(const value_t deg, value_t x, value_t y, value_t z) |
|
|
_Matrix4x4 < value_t > & |
rotate_rad(const value_t rad, const vec3_t & axis) |
|
|
_Matrix4x4 < value_t > & |
rotate_rad(const value_t rad, value_t x, value_t y, value_t z) |
|
|
_Matrix4x4 < value_t > & |
rotateToDirection(const vec3_t & _baseZ) |
|
|
_Matrix4x4 < value_t > & |
lookAt(const vec3_t & _pos, const vec3_t & _target, const vec3_t & _up) |
|
|
_Matrix4x4 < value_t > & |
transpose() |
|
|
_Matrix4x4 |
createScale( value_t sx, value_t sy, value_t sz) |
|
|
_Matrix4x4 |
createScale( value_t s) |
|
|
_Matrix4x4 |
perspectiveProjection(const angle_t & angle, value_t ratio, value_t zNear, value_t zFar) |
|
|
_Matrix4x4 |
perspectiveProjection( value_t l, value_t r, value_t b, value_t t, value_t n, value_t f) |
|
|
_Matrix4x4 |
orthographicProjection( value_t l, value_t r, value_t b, value_t t, value_t n, value_t f) |
Creation
Comparators
Serialization
Public Types
Public Functions
|
|
|
|
bool |
convertsSafelyToSRT() const Can be used to check whether it is (relatively) safe to convert a matrix to an SRT without loss of information. |
|
|
srt_t |
toSRT() const Converts a matrix to a SRT; throws an exception if the transformation can not be captured by a SRT. |
|
|
srt_t |
_toSRT() const Converts a matrix to a SRT even if information may be lost. |
Documentation
function
Geometry::_Matrix4x4::_Matrix4x4
Defined in Geometry/Matrix4x4.h:50
function
Geometry::_Matrix4x4::_Matrix4x4
|
|
|
|
|
|
_Matrix4x4( |
value_t |
d0, |
|
value_t |
d1, |
|
value_t |
d2, |
|
value_t |
d3, |
|
value_t |
d4, |
|
value_t |
d5, |
|
value_t |
d6, |
|
value_t |
d7, |
|
value_t |
d8, |
|
value_t |
d9, |
|
value_t |
d10, |
|
value_t |
d11, |
|
value_t |
d12, |
|
value_t |
d13, |
|
value_t |
d14, |
|
value_t |
d15 |
) |
|
|
Defined in Geometry/Matrix4x4.h:54
function
Geometry::_Matrix4x4::_Matrix4x4
Defined in Geometry/Matrix4x4.h:74
function
Geometry::_Matrix4x4::_Matrix4x4
Defined in Geometry/Matrix4x4.h:78
function
Geometry::_Matrix4x4::_Matrix4x4
Convert a 3 times 3 matrix to a 4 times 4 matrix by adding a one in the last entry, and zeros in the fourth.
Defined in Geometry/Matrix4x4.h:84
function
Geometry::_Matrix4x4::_Matrix4x4
v0.x v1.x v2.x v3.x v0.y v1.y v2.y v3.y v0.z v1.z v2.z v3.z v0.w v1.w v2.w v3.w
Defined in Geometry/Matrix4x4.h:109
function
Geometry::_Matrix4x4::operator[]
Parameters
- i
- an index
Returns
the i-th element of this matrix
Note: elements are arranged row-wise, so i=3 will result in the 1st column in the 2nd row
Defined in Geometry/Matrix4x4.h:139
function
Geometry::_Matrix4x4::at
Parameters
- i
- an index
Returns
the i-th element of this matrix
Note: elements are arranged row-wise, so i=3 will result in the 1st column in the 2nd row
Defined in Geometry/Matrix4x4.h:147
function
Geometry::_Matrix4x4::getColumnAsVec3
Return the first three values of columncas three-dimensional vector.
Defined in Geometry/Matrix4x4.h:152
function
Geometry::_Matrix4x4::getColumn
Return the values of columncas four-dimensional vector.
Defined in Geometry/Matrix4x4.h:160
function
Geometry::_Matrix4x4::getData
Returns
the underlying array of this matrix
Note: elements in array are arranged row-wise
Defined in Geometry/Matrix4x4.h:171
function
Geometry::_Matrix4x4::det
Returns
the determinant of this
Defined in Geometry/Matrix4x4.h:177
function
Geometry::_Matrix4x4::isIdentity
Defined in Geometry/Matrix4x4.h:187
function
Geometry::_Matrix4x4::setIdentity
Defined in Geometry/Matrix4x4.h:198
function
Geometry::_Matrix4x4::operator+=
Defined in Geometry/Matrix4x4.h:203
function
Geometry::_Matrix4x4::operator-=
Defined in Geometry/Matrix4x4.h:208
function
Geometry::_Matrix4x4::operator*=
Defined in Geometry/Matrix4x4.h:213
function
Geometry::_Matrix4x4::operator*=
Defined in Geometry/Matrix4x4.h:244
function
Geometry::_Matrix4x4::operator/=
Defined in Geometry/Matrix4x4.h:249
function
Geometry::_Matrix4x4::translate
Defined in Geometry/Matrix4x4.h:254
function
Geometry::_Matrix4x4::translate
Defined in Geometry/Matrix4x4.h:261
function
Geometry::_Matrix4x4::scale
Defined in Geometry/Matrix4x4.h:270
function
Geometry::_Matrix4x4::scale
Defined in Geometry/Matrix4x4.h:273
function
Geometry::_Matrix4x4::rotate
See also: http://de.wikipedia.org/wiki/Rotationsmatrix
See also: http://wiki.delphigl.com/index.php/glRotate
Defined in Geometry/Matrix4x4.h:279
function
Geometry::_Matrix4x4::rotate
Defined in Geometry/Matrix4x4.h:301
function
Geometry::_Matrix4x4::rotate_deg
Defined in Geometry/Matrix4x4.h:304
function
Geometry::_Matrix4x4::rotate_deg
Defined in Geometry/Matrix4x4.h:307
function
Geometry::_Matrix4x4::rotate_rad
Defined in Geometry/Matrix4x4.h:310
function
Geometry::_Matrix4x4::rotate_rad
Defined in Geometry/Matrix4x4.h:313
function
Geometry::_Matrix4x4::rotateToDirection
// www.gamedev.net/community/forums/topic.asp?topic_id=384661
Defined in Geometry/Matrix4x4.h:320
function
Geometry::_Matrix4x4::lookAt
//http://pyopengl.sourceforge.net/documentation/manual/gluLookAt.3G.html
Defined in Geometry/Matrix4x4.h:357
function
Geometry::_Matrix4x4::transpose
Exchange rows and columns.
Defined in Geometry/Matrix4x4.h:414
function
Geometry::_Matrix4x4::createScale
Defined in Geometry/Matrix4x4.h:264
function
Geometry::_Matrix4x4::createScale
Defined in Geometry/Matrix4x4.h:267
function
Geometry::_Matrix4x4::perspectiveProjection
http://pyopengl.sourceforge.net/documentation/manual/gluPerspective.3G.html
Defined in Geometry/Matrix4x4.h:387
function
Geometry::_Matrix4x4::perspectiveProjection
http://wiki.delphigl.com/index.php/glFrustumglFrustum(left,right,bottom,top,near,far);
Defined in Geometry/Matrix4x4.h:395
function
Geometry::_Matrix4x4::orthographicProjection
http://wiki.delphigl.com/index.php/glOrthoglOrtho(left,right,bottom,top,near,far);
Defined in Geometry/Matrix4x4.h:405
function
Geometry::_Matrix4x4::operator+
Defined in Geometry/Matrix4x4.h:442
function
Geometry::_Matrix4x4::operator-
Defined in Geometry/Matrix4x4.h:446
function
Geometry::_Matrix4x4::operator*
Defined in Geometry/Matrix4x4.h:450
function
Geometry::_Matrix4x4::operator*
Defined in Geometry/Matrix4x4.h:455
function
Geometry::_Matrix4x4::operator/
Defined in Geometry/Matrix4x4.h:459
function
Geometry::_Matrix4x4::transformDirection
Defined in Geometry/Matrix4x4.h:463
function
Geometry::_Matrix4x4::transformDirection
Defined in Geometry/Matrix4x4.h:466
function
Geometry::_Matrix4x4::transformPosition
Defined in Geometry/Matrix4x4.h:476
function
Geometry::_Matrix4x4::transformPosition
Defined in Geometry/Matrix4x4.h:479
function
Geometry::_Matrix4x4::operator*
Defined in Geometry/Matrix4x4.h:488
function
Geometry::_Matrix4x4::operator*
Defined in Geometry/Matrix4x4.h:494
function
Geometry::_Matrix4x4::inverse
Returns
the inverse matrix of this
Exceptions
- a
- division by zero will occur if det is zero
Note: numerical problems will occur if det is nearly zero
Note: a new matrix is created, this remains unchanged
Defined in Geometry/Matrix4x4.h:508
function
Geometry::_Matrix4x4::getTransposed
Returns a new matrix whose rows and columns are exchanged.
Defined in Geometry/Matrix4x4.h:554
function
Geometry::_Matrix4x4::equals
compares this with other componentwise
Parameters
- other
- the object to compare with
- epsilon
- the maximum allowed difference between the component pairs
Returns
true iff any the absolute difference between any pai of components is larger than epsilon
Defined in Geometry/Matrix4x4.h:568
function
Geometry::_Matrix4x4::operator==
Defined in Geometry/Matrix4x4.h:574
function
Geometry::_Matrix4x4::operator!=
Defined in Geometry/Matrix4x4.h:580
typedef
Geometry::_Matrix4x4::value_t
Defined in Geometry/Matrix4x4.h:34
typedef
Geometry::_Matrix4x4::angle_t
Defined in Geometry/Matrix4x4.h:35
typedef
Geometry::_Matrix4x4::srt_t
Defined in Geometry/Matrix4x4.h:36
typedef
Geometry::_Matrix4x4::vec3_t
Defined in Geometry/Matrix4x4.h:37
typedef
Geometry::_Matrix4x4::vec4_t
Defined in Geometry/Matrix4x4.h:38
function
Geometry::_Matrix4x4::convertsSafelyToSRT
Can be used to check whether it is (relatively) safe to convert a matrix to an SRT without loss of information.
Defined in Geometry/Matrix4x4.h:586
function
Geometry::_Matrix4x4::toSRT
Converts a matrix to a SRT; throws an exception if the transformation can not be captured by a SRT.
Defined in Geometry/Matrix4x4.h:603
function
Geometry::_Matrix4x4::_toSRT
Converts a matrix to a SRT even if information may be lost.
Defined in Geometry/Matrix4x4.h:610