|
| NCollection_Mat4 () |
| Empty constructor. Construct the identity matrix. More...
|
|
template<typename OtherElement_t > |
| NCollection_Mat4 (const NCollection_Mat4< OtherElement_t > &theOtherMat4) |
| Conversion constructor (explicitly converts some 4 x 4 matrix with other element type to a new 4 x 4 matrix with the element type Element_t, whose elements are static_cast'ed corresponding elements of theOtherMat4 matrix) More...
|
|
Element_t | GetValue (const size_t theRow, const size_t theCol) const |
| Get element at the specified row and column. More...
|
|
Element_t & | ChangeValue (const size_t theRow, const size_t theCol) |
| Access element at the specified row and column. More...
|
|
void | SetValue (const size_t theRow, const size_t theCol, const Element_t theValue) |
| Set value for the element specified by row and columns. More...
|
|
Element_t & | operator() (const size_t theRow, const size_t theCol) |
| Return value. More...
|
|
Element_t | operator() (const size_t theRow, const size_t theCol) const |
| Return value. More...
|
|
NCollection_Vec4< Element_t > | GetRow (const size_t theRow) const |
| Get vector of elements for the specified row. More...
|
|
void | SetRow (const size_t theRow, const NCollection_Vec3< Element_t > &theVec) |
| Change first 3 row values by the passed vector. More...
|
|
void | SetRow (const size_t theRow, const NCollection_Vec4< Element_t > &theVec) |
| Set row values by the passed 4 element vector. More...
|
|
NCollection_Vec4< Element_t > | GetColumn (const size_t theCol) const |
| Get vector of elements for the specified column. More...
|
|
void | SetColumn (const size_t theCol, const NCollection_Vec3< Element_t > &theVec) |
| Change first 3 column values by the passed vector. More...
|
|
void | SetColumn (const size_t theCol, const NCollection_Vec4< Element_t > &theVec) |
| Set column values by the passed 4 element vector. More...
|
|
NCollection_Vec4< Element_t > | GetDiagonal () const |
| Get vector of diagonal elements. More...
|
|
void | SetDiagonal (const NCollection_Vec3< Element_t > &theVec) |
| Change first 3 elements of the diagonal matrix. More...
|
|
void | SetDiagonal (const NCollection_Vec4< Element_t > &theVec) |
| Set diagonal elements of the matrix by the passed vector. More...
|
|
NCollection_Mat3< Element_t > | GetMat3 () const |
| Return 3x3 sub-matrix. More...
|
|
void | InitZero () |
| Initialize the zero matrix. More...
|
|
bool | IsZero () const |
| Checks the matrix for zero (without tolerance). More...
|
|
void | InitIdentity () |
| Initialize the identity matrix. More...
|
|
bool | IsIdentity () const |
| Checks the matrix for identity (without tolerance). More...
|
|
bool | IsEqual (const NCollection_Mat4 &theOther) const |
| Check this matrix for equality with another matrix (without tolerance!). More...
|
|
bool | operator== (const NCollection_Mat4 &theOther) const |
| Check this matrix for equality with another matrix (without tolerance!). More...
|
|
bool | operator!= (const NCollection_Mat4 &theOther) const |
| Check this matrix for non-equality with another matrix (without tolerance!). More...
|
|
const Element_t * | GetData () const |
| Raw access to the data (for OpenGL exchange); the data is returned in column-major order. More...
|
|
Element_t * | ChangeData () |
|
NCollection_Vec4< Element_t > | operator* (const NCollection_Vec4< Element_t > &theVec) const |
| Multiply by the vector (M * V). More...
|
|
void | Multiply (const NCollection_Mat4 &theMat) |
| Compute matrix multiplication. More...
|
|
NCollection_Mat4 & | operator*= (const NCollection_Mat4 &theMat) |
| Multiply by the another matrix. More...
|
|
NCollection_Mat4 | operator* (const NCollection_Mat4 &theMat) const |
| Compute matrix multiplication product. More...
|
|
NCollection_Mat4 | Multiplied (const NCollection_Mat4 &theMat) const |
| Compute matrix multiplication product. More...
|
|
void | Multiply (const Element_t theFactor) |
| Compute per-component multiplication. More...
|
|
NCollection_Mat4 & | operator*= (const Element_t theFactor) |
| Compute per-element multiplication. More...
|
|
NCollection_Mat4 | operator* (const Element_t theFactor) const |
| Compute per-element multiplication. More...
|
|
NCollection_Mat4 | Multiplied (const Element_t theFactor) const |
| Compute per-element multiplication. More...
|
|
void | Divide (const Element_t theFactor) |
| Compute per-component division. More...
|
|
NCollection_Mat4 & | operator/= (const Element_t theScalar) |
| Per-component division. More...
|
|
NCollection_Mat4 | Divided (const Element_t theScalar) const |
| Divides all the coefficients of the matrix by scalar. More...
|
|
NCollection_Mat4 | operator/ (const Element_t theScalar) const |
| Divides all the coefficients of the matrix by scalar. More...
|
|
void | Add (const NCollection_Mat4 &theMat) |
| Per-component addition of another matrix. More...
|
|
NCollection_Mat4 & | operator+= (const NCollection_Mat4 &theMat) |
| Per-component addition of another matrix. More...
|
|
void | Subtract (const NCollection_Mat4 &theMat) |
| Per-component subtraction of another matrix. More...
|
|
NCollection_Mat4 & | operator-= (const NCollection_Mat4 &theMat) |
| Per-component subtraction of another matrix. More...
|
|
NCollection_Mat4 | Added (const NCollection_Mat4 &theMat) const |
| Per-component addition of another matrix. More...
|
|
NCollection_Mat4 | operator+ (const NCollection_Mat4 &theMat) const |
| Per-component addition of another matrix. More...
|
|
NCollection_Mat4 | Subtracted (const NCollection_Mat4 &theMat) const |
| Per-component subtraction of another matrix. More...
|
|
NCollection_Mat4 | operator- (const NCollection_Mat4 &theMat) const |
| Per-component subtraction of another matrix. More...
|
|
NCollection_Mat4 | Negated () const |
| Returns matrix with all components negated. More...
|
|
NCollection_Mat4 | operator- () const |
| Returns matrix with all components negated. More...
|
|
void | Translate (const NCollection_Vec3< Element_t > &theVec) |
| Translate the matrix on the passed vector. More...
|
|
NCollection_Mat4 | Transposed () const |
| Transpose the matrix. More...
|
|
void | Transpose () |
| Transpose the matrix. More...
|
|
bool | Inverted (NCollection_Mat4< Element_t > &theOutMx, Element_t &theDet) const |
| Compute inverted matrix. More...
|
|
bool | Inverted (NCollection_Mat4< Element_t > &theOutMx) const |
| Compute inverted matrix. More...
|
|
NCollection_Mat4 | Inverted () const |
| Return inverted matrix. More...
|
|
Element_t | DeterminantMat3 () const |
| Return determinant of the 3x3 sub-matrix. More...
|
|
NCollection_Mat4< Element_t > | Adjoint () const |
| Return adjoint (adjugate matrix, e.g. conjugate transpose). More...
|
|
template<typename Other_t > |
void | ConvertFrom (const NCollection_Mat4< Other_t > &theFrom) |
| Take values from NCollection_Mat4 with a different element type with type conversion. More...
|
|
template<typename Other_t > |
void | Convert (const NCollection_Mat4< Other_t > &theFrom) |
| Take values from NCollection_Mat4 with a different element type with type conversion. More...
|
|
void | DumpJson (Standard_OStream &theOStream, Standard_Integer) const |
| Dumps the content of me into the stream. More...
|
|
template<typename Element_t>
class NCollection_Mat4< Element_t >
Generic matrix of 4 x 4 elements. To be used in conjunction with NCollection_Vec4 entities. Originally introduced for 3D space projection and orientation operations. Warning, empty constructor returns an identity matrix.