Public Types |
Public Member Functions |
Static Public Member Functions |
Public Attributes |
Static Protected Attributes |
List of all members
artec::sdk::base::Matrix4x4< Type > Class Template Reference
#include <artec/sdk/base/Matrix.h>
Public Types | |
| enum | { Identity = 0x0001, General = 0x0002 } |
| typedef Type | value_type |
Public Member Functions | |
| Matrix4x4 () | |
| Matrix4x4 (Type _00, Type _01, Type _02, Type _03, Type _10, Type _11, Type _12, Type _13, Type _20, Type _21, Type _22, Type _23, Type _30, Type _31, Type _32, Type _33) | |
| template<typename Type2 , std::size_t sizeOfArray> | |
| Matrix4x4 (const Type2(&values)[sizeOfArray]) | |
| template<typename Type2 > | |
| Matrix4x4 (const Type2 *values, int rows2, int cols2) | |
| Matrix4x4 (const Matrix4x4 &second) | |
| Copying constructor. More... | |
| template<int rows2, int cols2, typename Type2 > | |
| Matrix4x4 (const GenericMatrix< rows2, cols2, Type2 > &second) | |
| Copying constructor with size_ conversion. More... | |
| template<typename Type2 > | |
| Matrix4x4 (const Matrix4x4< Type2 > &second) | |
| Copying constructor with type conversion. More... | |
| void | fill (const Type value) |
| Fill matrix with value. More... | |
| template<typename Type2 > | |
| Point4< Type2 > | operator* (const Point4< Type2 > &point) const |
| Matrix - point multiplication. More... | |
| Matrix4x4 | operator* (const Type &val) const |
| template<typename Type2 > | |
| Point3< Type2 > | operator* (const Point3< Type2 > &point) const |
| Special case of matrix-point multiplication: geometric transformation. More... | |
| Matrix4x4 | operator- () const |
| Unary minus. More... | |
| bool | operator== (const Matrix4x4 &m) const |
| check matrices are equal More... | |
| bool | operator!= (const Matrix4x4 &m) const |
| check matrices are not equal More... | |
| Type & | operator() (int row, int col) |
| const Type & | operator() (int row, int col) const |
| void | setToIdentity () |
| Make current matrix to identity. More... | |
| bool | isIdentity () const |
| Check if matrix is an identity matrix. More... | |
| Matrix4x4 | transposed () const |
| Return transposed matrix copy. More... | |
| Matrix4x4< Type > | inverted (bool *invertible=0) const |
| Inversion. More... | |
| Point3< Type > | project (const Point3< Type > &point) const |
| int | size () const |
| template<int rows2, int cols2, typename Type2 > | |
| Matrix4x4 | operator= (const GenericMatrix< rows2, cols2, Type2 > &second) |
| Matrix4x4 & | operator= (const Matrix4x4 &second) |
| template<int rows, int cols> | |
| GenericMatrix< rows, cols, Type > | toGenericMatrix () const |
| template<int rows, int cols, typename Type2 > | |
| GenericMatrix< rows, cols, Type2 > | toGenericMatrix () const |
| Matrix4x4 & | operator+= (const Matrix4x4 &mat) |
| Matrix4x4 & | operator-= (const Matrix4x4 &mat) |
| Matrix4x4 & | operator*= (const Matrix4x4 &other) |
| Matrix4x4 | operator+ (const Matrix4x4 &mat) const |
| Matrix4x4 | operator- (const Matrix4x4 &mat) const |
| Matrix4x4 | operator* (const Matrix4x4 &mat) const |
| template<int cols2> | |
| GenericMatrix< 4, cols2, Type > | operator* (const GenericMatrix< 4, cols2, Type > &mat) const |
| Matrix4x4 & | operator+= (const Type &val) |
| Matrix4x4 & | operator-= (const Type &val) |
| Matrix4x4 & | operator*= (const Type &val) |
| Matrix4x4 & | operator/= (const Type &val) |
| Matrix4x4 | operator+ (const Type &val) const |
| Matrix4x4 | operator- (const Type &val) const |
| Matrix4x4 | operator/ (const Type &val) const |
| operator Type * () | |
| operator const Type * () const | |
Static Public Member Functions | |
| static Matrix4x4 | identity () |
| Identity matrix. More... | |
| static Matrix4x4 | rotation (Type angle, const Point3< Type > &direction) |
| ! Important ! Direction is a unit vector, don't forget to normalize it !!! More... | |
| static Matrix4x4 | rotation (Type angle, const Point3< Type > &direction, const Point3< Type > ¢er) |
| ! Important ! Direction is a unit vector, don't forget to normalize it !!! More... | |
| static Matrix4x4 | translation (const Point3< Type > &direction) |
| Translations. More... | |
| static Matrix4x4 | inverseMotion (const Matrix4x4 &matrix) |
| Inverse transformation matrix. More... | |
| static Matrix4x4 | perspective (Type left, Type right, Type bottom, Type top, Type nearVal, Type farVal) |
| Get perspective projection matrix. More... | |
| static Matrix4x4 | perspectiveFov (float fovy, float aspect, float zNear, float zFar) |
| Get perspective projection matrix. More... | |
| static Matrix4x4 | ortho (Type left, Type right, Type bottom, Type top, Type nearVal, Type farVal) |
| Get orthogonal matrix. More... | |
| static Matrix4x4 | rotationX (Type angle) |
| static Matrix4x4 | rotationY (Type angle) |
| static Matrix4x4 | rotationZ (Type angle) |
| static Matrix4x4 | rotationX (Type angle, const Point3< Type > ¢er) |
| static Matrix4x4 | rotationY (Type angle, const Point3< Type > ¢er) |
| static Matrix4x4 | rotationZ (Type angle, const Point3< Type > ¢er) |
| static Matrix4x4 | scale (Type factor) |
| static Matrix4x4 | scale (Type factor, const Point3< Type > ¢er) |
Public Attributes | |
| union { | |
| struct { | |
| Type m [4][4] | |
| } | |
| Type data [4 *4] | |
| }; | |
| matrix data More... | |
| int | flagBits |
Static Protected Attributes | |
| static int const | rows_ = 4 |
| static int const | cols_ = 4 |
| static int const | size_ = 4 * 4 |
Detailed Description
template<typename Type = double>
class artec::sdk::base::Matrix4x4< Type >
Member Typedef Documentation
template<typename Type = double>
| typedef Type artec::sdk::base::Matrix4x4< Type >::value_type |
Member Enumeration Documentation
template<typename Type = double>
| anonymous enum |
Constructor & Destructor Documentation
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
template<typename Type2 , std::size_t sizeOfArray>
|
inlineexplicit |
template<typename Type = double>
template<typename Type2 >
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
template<int rows2, int cols2, typename Type2 >
|
inlineexplicit |
template<typename Type = double>
template<typename Type2 >
|
inlineexplicit |
Member Function Documentation
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type >
| Matrix4x4< Type > artec::sdk::base::Matrix4x4< Type >::inverted | ( | bool * | invertible = 0 | ) | const |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
template<int cols2>
|
inline |
template<typename Type = double>
template<typename Type2 >
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
template<typename Type2 >
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
template<int rows2, int cols2, typename Type2 >
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inline |
template<typename Type = double>
|
inline |
template<typename Type = double>
template<int rows, int cols>
|
inline |
template<typename Type = double>
template<int rows, int cols, typename Type2 >
|
inline |
template<typename Type = double>
|
inlinestatic |
template<typename Type = double>
|
inline |
Member Data Documentation
| union { ... } |
matrix data
template<typename Type = double>
|
staticprotected |
template<typename Type = double>
| Type artec::sdk::base::Matrix4x4< Type >::data[4 *4] |
template<typename Type = double>
|
mutable |
template<typename Type = double>
| Type artec::sdk::base::Matrix4x4< Type >::m[4][4] |
template<typename Type = double>
|
staticprotected |
template<typename Type = double>
|
staticprotected |
The documentation for this class was generated from the following file:
- artec/sdk/base/Matrix.h
