|
HDK
|
#include <ImathMatrix.h>
Inheritance diagram for Matrix44< T >:Public Types | |
| using | value_type = T |
| typedef T | BaseType |
The base type: In templates that accept a parameter V (could be a Color4), you can refer to T as V::BaseType More... | |
| typedef Vec4< T > | BaseVecType |
| The base vector type. More... | |
Public Types inherited from MatrixN< Matrix44, float, 4 > | |
| using | RowArray = typename std::array< float, N > |
| using | Iterator = typename std::array< RowArray, N >::iterator |
| using | ConstIterator = typename std::array< RowArray, N >::const_iterator |
Public Member Functions | |
| IMATH_HOSTDEVICE T * | operator[] (int i) IMATH_NOEXCEPT |
| Row access. More... | |
| IMATH_HOSTDEVICE const T * | operator[] (int i) const IMATH_NOEXCEPT |
| Row access. More... | |
| Matrix44 ()=default | |
| Matrix44 (float m00, float m01, float m02, float m03, float m10, float m11, float m12, float m13, float m20, float m21, float m22, float m23, float m30, float m31, float m32, float m33) | |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 Matrix44< T > & | setValue (const Matrix44< S > &v) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 Matrix44< T > & | setTheMatrix (const Matrix44< S > &v) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE const Matrix44< T > & | setEulerAngles (const Vec3< S > &r) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44< T > & | setAxisAngle (const Vec3< S > &axis, S angle) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE const Matrix44< T > & | rotate (const Vec3< S > &r) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44< T > & | setScale (const Vec3< S > &s) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44< T > & | scale (const Vec3< S > &s) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44< T > & | setTranslation (const Vec3< S > &t) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44< T > & | translate (const Vec3< S > &t) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44< T > & | setShear (const Vec3< S > &h) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44< T > & | setShear (const Shear6< S > &h) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44< T > & | shear (const Vec3< S > &h) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44< T > & | shear (const Shear6< S > &h) IMATH_NOEXCEPT |
Constructors and Assignment | |
| IMATH_HOSTDEVICE constexpr | Matrix44 (Uninitialized) IMATH_NOEXCEPT |
| Uninitialized. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 | Matrix44 () IMATH_NOEXCEPT |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 | Matrix44 (T a) IMATH_NOEXCEPT |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 | Matrix44 (const T a[4][4]) IMATH_NOEXCEPT |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 | Matrix44 (T a, T b, T c, T d, T e, T f, T g, T h, T i, T j, T k, T l, T m, T n, T o, T p) IMATH_NOEXCEPT |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 | Matrix44 (Matrix33< T > r, Vec3< T > t) IMATH_NOEXCEPT |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 | Matrix44 (const Matrix44 &v) IMATH_NOEXCEPT |
| Copy constructor. More... | |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 | Matrix44 (const Matrix44< S > &v) IMATH_NOEXCEPT |
| Construct from Matrix44 of another base type. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | operator= (const Matrix44 &v) IMATH_NOEXCEPT |
| Assignment operator. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | operator= (T a) IMATH_NOEXCEPT |
| Assignment from scalar. More... | |
| ~Matrix44 () IMATH_NOEXCEPT=default | |
| Destructor. More... | |
Interoperability with other matrix types | |
Construction and assignment are allowed from other classes that appear to be equivalent matrix types, provided that they support double-subscript (i.e., This functionality is disabled for gcc 4.x, which seems to have a compiler bug that results in spurious errors. It can also be disabled by defining IMATH_FOREIGN_VECTOR_INTEROP to be 0 prior to including any Imath header files. | |
| template<typename M , IMATH_ENABLE_IF(has_double_subscript< M, T, 4, 4 >::value) > | |
| IMATH_HOSTDEVICE | Matrix44 (const M &m) |
| template<typename M , IMATH_ENABLE_IF(has_double_subscript< M, T, 4, 4 >::value) > | |
| IMATH_HOSTDEVICE const Matrix44 & | operator= (const M &m) |
Compatibility with Sb | |
| IMATH_HOSTDEVICE T * | getValue () IMATH_NOEXCEPT |
| Return a raw pointer to the array of values. More... | |
| IMATH_HOSTDEVICE const T * | getValue () const IMATH_NOEXCEPT |
| Return a raw pointer to the array of values. More... | |
| template<class S > | |
| IMATH_HOSTDEVICE void | getValue (Matrix44< S > &v) const IMATH_NOEXCEPT |
Return the value in v More... | |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 Matrix44 & | setValue (const Matrix44< S > &v) IMATH_NOEXCEPT |
| Set the value. More... | |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 Matrix44 & | setTheMatrix (const Matrix44< S > &v) IMATH_NOEXCEPT |
| Set the value. More... | |
Maniplation | |
| IMATH_HOSTDEVICE void | makeIdentity () IMATH_NOEXCEPT |
| Set to the identity matrix. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | transpose () IMATH_NOEXCEPT |
| Transpose. More... | |
| IMATH_HOSTDEVICE constexpr Matrix44 | transposed () const IMATH_NOEXCEPT |
| Return the transpose. More... | |
| IMATH_CONSTEXPR14 const Matrix44 & | invert (bool singExc) |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | invert () IMATH_NOEXCEPT |
| IMATH_CONSTEXPR14 Matrix44< T > | inverse (bool singExc) const |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 Matrix44< T > | inverse () const IMATH_NOEXCEPT |
| Return the inverse using the determinant, leaving this unmodified. More... | |
| IMATH_CONSTEXPR14 const Matrix44 & | gjInvert (bool singExc) |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | gjInvert () IMATH_NOEXCEPT |
| Matrix44< T > | gjInverse (bool singExc) const |
| IMATH_HOSTDEVICE Matrix44< T > | gjInverse () const IMATH_NOEXCEPT |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 T | minorOf (const int r, const int c) const IMATH_NOEXCEPT |
| Calculate the matrix minor of the (r,c) element. More... | |
| IMATH_HOSTDEVICE constexpr T | fastMinor (const int r0, const int r1, const int r2, const int c0, const int c1, const int c2) const IMATH_NOEXCEPT |
| Build a minor using the specified rows and columns. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 T | determinant () const IMATH_NOEXCEPT |
| Determinant. More... | |
| IMATH_HOSTDEVICE constexpr T | trace () const IMATH_NOEXCEPT |
| Trace. More... | |
| template<class S > | |
| IMATH_HOSTDEVICE const Matrix44 & | setEulerAngles (const Vec3< S > &r) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | setAxisAngle (const Vec3< S > &ax, S ang) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE const Matrix44 & | rotate (const Vec3< S > &r) IMATH_NOEXCEPT |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | setScale (T s) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | setScale (const Vec3< S > &s) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | scale (const Vec3< S > &s) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | setTranslation (const Vec3< S > &t) IMATH_NOEXCEPT |
| IMATH_HOSTDEVICE constexpr const Vec3< T > | translation () const IMATH_NOEXCEPT |
| Return translation component. More... | |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | translate (const Vec3< S > &t) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | setShear (const Vec3< S > &h) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | setShear (const Shear6< S > &h) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | shear (const Vec3< S > &h) IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | shear (const Shear6< S > &h) IMATH_NOEXCEPT |
Matrix Operations | |
| Matrix44 | getTranspose () const |
| Return the transpose of the matrix. More... | |
| float | getDeterminant () const |
| Return the determinant of the matrix. More... | |
| Matrix44 | getAdjugate () const |
| Return the adjugate of the matrix. More... | |
| Matrix44 | getInverse () const |
| Return the inverse of the matrix. More... | |
Public Member Functions inherited from MatrixN< Matrix44, float, 4 > | |
| MatrixN () | |
| MatrixN (Uninit) | |
| MatrixN (floats) | |
| MatrixN (const float *begin, const float *end) | |
| bool | operator== (const Matrix44 &rhs) const |
| Return true if the given matrix is identical to this one. More... | |
| bool | operator!= (const Matrix44 &rhs) const |
| Return true if the given matrix differs from this one. More... | |
| bool | isEquivalent (const Matrix44 &rhs, floattolerance) const |
| RowArray & | operator[] (size_t i) |
| Return the row array at the given index. More... | |
| const RowArray & | operator[] (size_t i) const |
| Return the const row array at the given index. More... | |
| Matrix44 | operator+ (const Matrix44 &rhs) const |
| Component-wise addition of two matrices. More... | |
| Matrix44 & | operator+= (const Matrix44 &rhs) |
| Component-wise addition of two matrices. More... | |
| Matrix44 | operator- (const Matrix44 &rhs) const |
| Component-wise subtraction of two matrices. More... | |
| Matrix44 & | operator-= (const Matrix44 &rhs) |
| Component-wise subtraction of two matrices. More... | |
| Matrix44 | operator* (floats) const |
| Component-wise multiplication of a matrix and a scalar. More... | |
| Matrix44 & | operator*= (floats) |
| Component-wise multiplication of a matrix and a scalar. More... | |
| Matrix44 | operator/ (floats) const |
| Component-wise division of a matrix by a scalar. More... | |
| Matrix44 & | operator/= (floats) |
| Component-wise division of a matrix by a scalar. More... | |
| Matrix44 | operator+ () const |
| Unary plus of a matrix. More... | |
| Matrix44 | operator- () const |
| Unary negation of a matrix. More... | |
| Matrix44 | operator* (const Matrix44 &rhs) const |
| Compute the matrix product. More... | |
| Matrix44 & | operator*= (const Matrix44 &rhs) |
| Compute the matrix product. More... | |
| Matrix44 | operator/ (const Matrix44 &rhs) const |
| Matrix44 & | operator/= (const Matrix44 &rhs) |
| Iterator | begin () |
| ConstIterator | begin () const |
| Iterator | end () |
| ConstIterator | end () const |
| float * | data () |
| Return a pointer to the underlying data array. More... | |
| const float * | data () const |
| Return a const pointer to the underlying data array. More... | |
Static Public Member Functions | |
| IMATH_HOSTDEVICE static constexpr unsigned int | dimensions () IMATH_NOEXCEPT |
| Return the number of the row and column dimensions, i.e. 4. More... | |
Numeric Limits | |
| IMATH_HOSTDEVICE static constexpr T | baseTypeLowest () IMATH_NOEXCEPT |
| Largest possible negative value. More... | |
| IMATH_HOSTDEVICE static constexpr T | baseTypeMax () IMATH_NOEXCEPT |
| Largest possible positive value. More... | |
| IMATH_HOSTDEVICE static constexpr T | baseTypeSmallest () IMATH_NOEXCEPT |
| Smallest possible positive value. More... | |
| IMATH_HOSTDEVICE static constexpr T | baseTypeEpsilon () IMATH_NOEXCEPT |
| Smallest possible e for which 1+e != 1. More... | |
Static Public Member Functions inherited from MatrixN< Matrix44, float, 4 > | |
| static constexpr size_t | numRows () |
| Return the number of rows in this matrix. More... | |
| static constexpr size_t | numColumns () |
| Return the number of columns in this matrix. More... | |
Public Attributes | |
Direct access to elements | |
| T | x [4][4] |
| Matrix elements. More... | |
Static Public Attributes | |
| static const Matrix44 | IDENTITY |
Arithmetic and Comparison | |
| IMATH_HOSTDEVICE constexpr bool | operator== (const Matrix44 &v) const IMATH_NOEXCEPT |
| Equality. More... | |
| IMATH_HOSTDEVICE constexpr bool | operator!= (const Matrix44 &v) const IMATH_NOEXCEPT |
| Inequality. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 bool | equalWithAbsError (const Matrix44< T > &v, T e) const IMATH_NOEXCEPT |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 bool | equalWithRelError (const Matrix44< T > &v, T e) const IMATH_NOEXCEPT |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | operator+= (const Matrix44 &v) IMATH_NOEXCEPT |
| Component-wise addition. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | operator+= (T a) IMATH_NOEXCEPT |
| Component-wise addition. More... | |
| IMATH_HOSTDEVICE constexpr Matrix44 | operator+ (const Matrix44 &v) const IMATH_NOEXCEPT |
| Component-wise addition. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | operator-= (const Matrix44 &v) IMATH_NOEXCEPT |
| Component-wise subtraction. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | operator-= (T a) IMATH_NOEXCEPT |
| Component-wise subtraction. More... | |
| IMATH_HOSTDEVICE constexpr Matrix44 | operator- (const Matrix44 &v) const IMATH_NOEXCEPT |
| Component-wise subtraction. More... | |
| IMATH_HOSTDEVICE constexpr Matrix44 | operator- () const IMATH_NOEXCEPT |
| Component-wise multiplication by -1. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | negate () IMATH_NOEXCEPT |
| Component-wise multiplication by -1. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | operator*= (T a) IMATH_NOEXCEPT |
| Component-wise multiplication. More... | |
| IMATH_HOSTDEVICE constexpr Matrix44 | operator* (T a) const IMATH_NOEXCEPT |
| Component-wise multiplication. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | operator/= (T a) IMATH_NOEXCEPT |
| Component-wise division. More... | |
| IMATH_HOSTDEVICE constexpr Matrix44 | operator/ (T a) const IMATH_NOEXCEPT |
| Component-wise division. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44 & | operator*= (const Matrix44 &v) IMATH_NOEXCEPT |
| Matrix-matrix multiplication. More... | |
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 Matrix44 | operator* (const Matrix44 &v) const IMATH_NOEXCEPT |
| Matrix-matrix multiplication. More... | |
| template<class S > | |
| IMATH_HOSTDEVICE void | multVecMatrix (const Vec3< S > &src, Vec3< S > &dst) const IMATH_NOEXCEPT |
| template<class S > | |
| IMATH_HOSTDEVICE void | multDirMatrix (const Vec3< S > &src, Vec3< S > &dst) const IMATH_NOEXCEPT |
| static IMATH_HOSTDEVICE void | multiply (const Matrix44 &a, const Matrix44 &b, Matrix44 &c) IMATH_NOEXCEPT |
| Matrix-matrix multiplication: compute c = a * b. More... | |
| static IMATH_HOSTDEVICE IMATH_CONSTEXPR14 Matrix44 | multiply (const Matrix44 &a, const Matrix44 &b) IMATH_NOEXCEPT |
| Matrix-matrix multiplication returning a result. More... | |
Vector Transformations | |
| Vector4 | multiply (const Vector4 &v) const |
| Return the product of this matrix and a 4D vector. More... | |
| Vector3 | transformPoint (const Vector3 &v) const |
| Transform the given 3D point. More... | |
| Vector3 | transformVector (const Vector3 &v) const |
| Transform the given 3D direction vector. More... | |
| Vector3 | transformNormal (const Vector3 &v) const |
| Transform the given 3D normal vector. More... | |
| static Matrix44 | createTranslation (const Vector3 &v) |
| Create a translation matrix. More... | |
| static Matrix44 | createScale (const Vector3 &v) |
| Create a scale matrix. More... | |
| static Matrix44 | createRotationX (float angle) |
| static Matrix44 | createRotationY (float angle) |
| static Matrix44 | createRotationZ (float angle) |
Additional Inherited Members | |
Protected Attributes inherited from MatrixN< Matrix44, float, 4 > | |
| std::array< RowArray, N > | _arr |
4x4 transformation matrix
A 4x4 matrix of floating-point values.
Vector transformation methods follow the row-vector convention, with matrix-vector multiplication computed as v' = vM.
Definition at line 800 of file ImathMatrix.h.
The base type: In templates that accept a parameter V (could be a Color4), you can refer to T as V::BaseType
Definition at line 1302 of file ImathMatrix.h.
| typedef Vec4<T> Matrix44< T >::BaseVecType |
The base vector type.
Definition at line 1305 of file ImathMatrix.h.
| using Matrix44< T >::value_type = T |
Definition at line 803 of file ImathMatrix.h.
|
inline |
Uninitialized.
Definition at line 823 of file ImathMatrix.h.
|
inline |
Default constructor: initialize to identity 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
Definition at line 3340 of file ImathMatrix.h.
|
inline |
Initialize to scalar constant a a a a a a a a a a a a a a a a
Definition at line 3362 of file ImathMatrix.h.
|
inline |
Construct from 4x4 array a[0][0] a[0][1] a[0][2] a[0][3] a[1][0] a[1][1] a[1][2] a[1][3] a[2][0] a[2][1] a[2][2] a[2][3] a[3][0] a[3][1] a[3][2] a[3][3]
Definition at line 3383 of file ImathMatrix.h.
|
inline |
Construct from given scalar values a b c d e f g h i j k l m n o p
Definition at line 3405 of file ImathMatrix.h.
|
inline |
Construct from a 3x3 rotation matrix and a translation vector r r r 0 r r r 0 r r r 0 t t t 1
Definition at line 3442 of file ImathMatrix.h.
|
inline |
Copy constructor.
Definition at line 3464 of file ImathMatrix.h.
|
inlineexplicit |
Construct from Matrix44 of another base type.
Definition at line 3487 of file ImathMatrix.h.
|
inlineexplicit |
Interoperability assignment from another type that behaves as if it were an equivalent matrix.
Definition at line 916 of file ImathMatrix.h.
|
inlinestatic |
Smallest possible e for which 1+e != 1.
Definition at line 1288 of file ImathMatrix.h.
|
inlinestatic |
Largest possible negative value.
Definition at line 1270 of file ImathMatrix.h.
|
inlinestatic |
Largest possible positive value.
Definition at line 1276 of file ImathMatrix.h.
|
inlinestatic |
Smallest possible positive value.
Definition at line 1282 of file ImathMatrix.h.
Create a rotation matrix about the X-axis.
| angle | Angle in radians |
Create a rotation matrix about the Y-axis.
| angle | Angle in radians |
Create a rotation matrix about the Z-axis.
| angle | Angle in radians |
Create a scale matrix.
Create a translation matrix.
|
inline |
Determinant.
Definition at line 4602 of file ImathMatrix.h.
|
inlinestatic |
Return the number of the row and column dimensions, i.e. 4.
Definition at line 1296 of file ImathMatrix.h.
|
inline |
Compare two matrices and test if they are "approximately equal":
m are the same with an absolute error of no more than e, i.e., for all i, j: abs (this[i][j] - m[i][j]) <= e
Definition at line 3691 of file ImathMatrix.h.
|
inline |
Compare two matrices and test if they are "approximately equal":
abs (this[i] - v[i][j]) <= e * abs (this[i][j])
Definition at line 3704 of file ImathMatrix.h.
|
inline |
Build a minor using the specified rows and columns.
Definition at line 4562 of file ImathMatrix.h.
Return the determinant of the matrix.
Return the transpose of the matrix.
|
inline |
Return a raw pointer to the array of values.
Definition at line 3556 of file ImathMatrix.h.
|
inline |
Return a raw pointer to the array of values.
Definition at line 3563 of file ImathMatrix.h.
|
inline |
Return the value in v
Definition at line 3571 of file ImathMatrix.h.
Return the inverse using the Gauss-Jordan method, leaving this unmodified. Significantly slower but more accurate than inverse().
Definition at line 4208 of file ImathMatrix.h.
|
inline |
Return the inverse using the Gauss-Jordan method, leaving this unmodified Significantly slower but more accurate than inverse().
Definition at line 4310 of file ImathMatrix.h.
|
inline |
Invert in place using the Gauss-Jordan method. Significantly slower but more accurate than invert().
| singExc | If true, throw an exception if the matrix cannot be inverted. |
Definition at line 4192 of file ImathMatrix.h.
|
inline |
Invert in place using the Gauss-Jordan method. Significantly slower but more accurate than invert().
Definition at line 4200 of file ImathMatrix.h.
|
inline |
Return the inverse using the determinant, leaving this unmodified.
| singExc | If true, throw an exception if the matrix cannot be inverted. |
Definition at line 4416 of file ImathMatrix.h.
|
inline |
Return the inverse using the determinant, leaving this unmodified.
Definition at line 4491 of file ImathMatrix.h.
|
inline |
Invert in place using the determinant.
| singExc | If true, throw an exception if the matrix cannot be inverted. |
Definition at line 4400 of file ImathMatrix.h.
|
inline |
Invert in place using the determinant.
Definition at line 4408 of file ImathMatrix.h.
|
inline |
Set to the identity matrix.
Definition at line 3641 of file ImathMatrix.h.
|
inline |
Calculate the matrix minor of the (r,c) element.
Definition at line 4577 of file ImathMatrix.h.
|
inline |
Vector-matrix multiplication: multiply src by the upper left 2x2 submatrix, ignoring the rest of matrix.
| [in] | src | The input vector |
| [out] | dst | The output vector |
Definition at line 4081 of file ImathMatrix.h.
Return the product of this matrix and a 4D vector.
|
inlinestatic |
Matrix-matrix multiplication: compute c = a * b.
Definition at line 4054 of file ImathMatrix.h.
|
inlinestatic |
Matrix-matrix multiplication returning a result.
Definition at line 3961 of file ImathMatrix.h.
|
inline |
Vector-matrix multiplication: a homogeneous transformation by computing Vec3 (src.x, src.y, src.z, 1) * m and dividing by the result's third element.
| [in] | src | The input vector |
| [out] | dst | The output vector |
Definition at line 4063 of file ImathMatrix.h.
|
inline |
Component-wise multiplication by -1.
Definition at line 3882 of file ImathMatrix.h.
|
inline |
Inequality.
Definition at line 3677 of file ImathMatrix.h.
|
inline |
Component-wise multiplication.
Definition at line 3930 of file ImathMatrix.h.
|
inline |
Matrix-matrix multiplication.
Definition at line 4047 of file ImathMatrix.h.
|
inline |
Component-wise multiplication.
Definition at line 3906 of file ImathMatrix.h.
|
inline |
Matrix-matrix multiplication.
Definition at line 4039 of file ImathMatrix.h.
|
inline |
Component-wise addition.
Definition at line 3765 of file ImathMatrix.h.
|
inline |
Component-wise addition.
Definition at line 3717 of file ImathMatrix.h.
|
inline |
Component-wise addition.
Definition at line 3741 of file ImathMatrix.h.
|
inline |
Component-wise subtraction.
Definition at line 3836 of file ImathMatrix.h.
|
inline |
Component-wise multiplication by -1.
Definition at line 3859 of file ImathMatrix.h.
|
inline |
Component-wise subtraction.
Definition at line 3788 of file ImathMatrix.h.
|
inline |
Component-wise subtraction.
Definition at line 3812 of file ImathMatrix.h.
|
inline |
Component-wise division.
Definition at line 4121 of file ImathMatrix.h.
|
inline |
Component-wise division.
Definition at line 4097 of file ImathMatrix.h.
|
inline |
Assignment operator.
Definition at line 3510 of file ImathMatrix.h.
|
inline |
Assignment from scalar.
Definition at line 3533 of file ImathMatrix.h.
|
inline |
Interoperability assignment from another type that behaves as if it were an equivalent matrix.
Definition at line 941 of file ImathMatrix.h.
|
inline |
Equality.
Definition at line 3663 of file ImathMatrix.h.
|
inline |
Row access.
Definition at line 3326 of file ImathMatrix.h.
|
inline |
Row access.
Definition at line 3333 of file ImathMatrix.h.
| IMATH_HOSTDEVICE const Matrix44& Matrix44< T >::rotate | ( | const Vec3< S > & | r | ) |
Rotate the matrix by XYZ euler angles in r (in radians)
|
inline |
Definition at line 4694 of file ImathMatrix.h.
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44& Matrix44< T >::scale | ( | const Vec3< S > & | s | ) |
Scale the matrix by s
|
inline |
Definition at line 4805 of file ImathMatrix.h.
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44& Matrix44< T >::setAxisAngle | ( | const Vec3< S > & | ax, |
| S | ang | ||
| ) |
Set matrix to rotation around given axis by given angle (in radians)
|
inline |
Definition at line 4662 of file ImathMatrix.h.
| IMATH_HOSTDEVICE const Matrix44& Matrix44< T >::setEulerAngles | ( | const Vec3< S > & | r | ) |
Set matrix to rotation by XYZ euler angles (in radians)
|
inline |
Definition at line 4624 of file ImathMatrix.h.
|
inline |
Set matrix to scale by given uniform factor
Definition at line 4741 of file ImathMatrix.h.
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44& Matrix44< T >::setScale | ( | const Vec3< S > & | s | ) |
Set matrix to scale by given vector
|
inline |
Definition at line 4773 of file ImathMatrix.h.
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44& Matrix44< T >::setShear | ( | const Vec3< S > & | h | ) |
Set matrix to shear by given vector h. The resulting matrix
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44& Matrix44< T >::setShear | ( | const Shear6< S > & | h | ) |
Set matrix to shear by given factors. The resulting matrix
|
inline |
Definition at line 4876 of file ImathMatrix.h.
|
inline |
Definition at line 4904 of file ImathMatrix.h.
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 Matrix44& Matrix44< T >::setTheMatrix | ( | const Matrix44< S > & | v | ) |
Set the value.
|
inline |
Definition at line 3618 of file ImathMatrix.h.
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44& Matrix44< T >::setTranslation | ( | const Vec3< S > & | t | ) |
Set matrix to translation by given vector
|
inline |
Definition at line 4828 of file ImathMatrix.h.
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 Matrix44& Matrix44< T >::setValue | ( | const Matrix44< S > & | v | ) |
Set the value.
|
inline |
Definition at line 3594 of file ImathMatrix.h.
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44& Matrix44< T >::shear | ( | const Vec3< S > & | h | ) |
Shear the matrix by given vector. The composed matrix will be shear * this, where the shear matrix ...
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44& Matrix44< T >::shear | ( | const Shear6< S > & | h | ) |
Shear the matrix by the given factors. The composed matrix will be shear * this, where the shear matrix ...
|
inline |
Definition at line 4932 of file ImathMatrix.h.
|
inline |
Definition at line 4952 of file ImathMatrix.h.
|
inline |
Trace.
Definition at line 4616 of file ImathMatrix.h.
Transform the given 3D normal vector.
Transform the given 3D point.
Transform the given 3D direction vector.
| IMATH_HOSTDEVICE IMATH_CONSTEXPR14 const Matrix44& Matrix44< T >::translate | ( | const Vec3< S > & | t | ) |
Translate the matrix by t
|
inline |
Definition at line 4863 of file ImathMatrix.h.
|
inline |
Return translation component.
Definition at line 4855 of file ImathMatrix.h.
|
inline |
Transpose.
Definition at line 4144 of file ImathMatrix.h.
|
inline |
Return the transpose.
Definition at line 4169 of file ImathMatrix.h.
Matrix elements.
Definition at line 809 of file ImathMatrix.h.