| 
    Open CASCADE Technology
    6.9.1
    
   | 
 
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. More...
#include <NCollection_Mat4.hxx>
Public Member Functions | |
| NCollection_Mat4 () | |
| Empty constructor. Construct the zero matrix.  More... | |
| NCollection_Mat4 (const NCollection_Mat4 &theOther) | |
| Copy constructor.  More... | |
| const NCollection_Mat4 & | operator= (const NCollection_Mat4 &theOther) | 
| Assignment operator.  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... | |
| 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... | |
| void | InitIdentity () | 
| Initialize the identity matrix.  More... | |
| bool | IsIdentity () const | 
| Checks the matrix for identity.  More... | |
| const Element_t * | GetData () const | 
| Raw access to the data (for OpenGL exchange).  More... | |
| Element_t * | ChangeData () | 
| operator const Element_t * () const | |
| operator Element_t * () | |
| NCollection_Vec4< Element_t > | operator* (const NCollection_Vec4< Element_t > &theVec) const | 
| Multiply by the vector (M * V).  More... | |
| NCollection_Mat4 | Multiply (const NCollection_Mat4 &theMatA, const NCollection_Mat4 &theMatB) | 
| Compute matrix multiplication product: A * B.  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 | 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) const | 
| Compute inverted matrix.  More... | |
| template<typename Other_t > | |
| void | Convert (const NCollection_Mat4< Other_t > &theOther) | 
Static Public Member Functions | |
| static size_t | Rows () | 
| Get number of rows.  More... | |
| static size_t | Cols () | 
| Get number of columns.  number of columns.  More... | |
| static NCollection_Mat4< Element_t > & | Map (Element_t *theData) | 
| Maps plain C array to matrix type.  More... | |
| static const NCollection_Mat4< Element_t > & | Map (const Element_t *theData) | 
| Maps plain C array to matrix type.  More... | |
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.
      
  | 
  inline | 
Empty constructor. Construct the zero matrix.
      
  | 
  inline | 
Copy constructor.
| theOther | [in] the matrix to copy values from. | 
      
  | 
  inline | 
      
  | 
  inline | 
Access element at the specified row and column.
| theRow | [in] the row.to access. | 
| theCol | [in] the column to access. | 
      
  | 
  inlinestatic | 
Get number of columns. number of columns.
      
  | 
  inline | 
      
  | 
  inline | 
Get vector of elements for the specified column.
| theCol | [in] the column to access. | 
      
  | 
  inline | 
Raw access to the data (for OpenGL exchange).
      
  | 
  inline | 
Get vector of diagonal elements.
      
  | 
  inline | 
Get vector of elements for the specified row.
| theRow | [in] the row to access. | 
      
  | 
  inline | 
Get element at the specified row and column.
| theRow | [in] the row.to address. | 
| theCol | [in] the column to address. | 
      
  | 
  inline | 
Initialize the identity matrix.
      
  | 
  inline | 
Compute inverted matrix.
| theOutMx | [out] the inverted matrix. | 
      
  | 
  inline | 
Checks the matrix for identity.
      
  | 
  inlinestatic | 
Maps plain C array to matrix type.
      
  | 
  inlinestatic | 
Maps plain C array to matrix type.
      
  | 
  inline | 
Compute matrix multiplication product.
| theMat | [in] the other matrix. | 
      
  | 
  inline | 
Compute per-element multiplication.
| theFactor | [in] the scale factor. | 
      
  | 
  inline | 
Compute matrix multiplication product: A * B.
| theMatA | [in] the matrix "A". | 
| theMatB | [in] the matrix "B". | 
      
  | 
  inline | 
Compute matrix multiplication.
| theMat | [in] the matrix to multiply. | 
      
  | 
  inline | 
Compute per-component multiplication.
| theFactor | [in] the scale factor. | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
Multiply by the vector (M * V).
| theVec | [in] the vector to multiply. | 
      
  | 
  inline | 
Compute matrix multiplication product.
| theMat | [in] the other matrix. | 
      
  | 
  inline | 
Compute per-element multiplication.
| theFactor | [in] the scale factor. | 
      
  | 
  inline | 
Multiply by the another matrix.
| theMat | [in] the other matrix. | 
      
  | 
  inline | 
Compute per-element multiplication.
| theFactor | [in] the scale factor. | 
      
  | 
  inline | 
Assignment operator.
| theOther | [in] the matrix to copy values from. | 
      
  | 
  inlinestatic | 
Get number of rows.
      
  | 
  inline | 
Change first 3 column values by the passed vector.
| theCol | [in] the column to change. | 
| theVec | [in] the vector of values. | 
      
  | 
  inline | 
Set column values by the passed 4 element vector.
| theCol | [in] the column to change. | 
| theVec | [in] the vector of values. | 
      
  | 
  inline | 
Change first 3 elements of the diagonal matrix.
| theVec | the vector of values. | 
      
  | 
  inline | 
Set diagonal elements of the matrix by the passed vector.
| theVec | [in] the vector of values. | 
      
  | 
  inline | 
Change first 3 row values by the passed vector.
| theRow | [in] the row to change. | 
| theVec | [in] the vector of values. | 
      
  | 
  inline | 
Set row values by the passed 4 element vector.
| theRow | [in] the row to change. | 
| theVec | [in] the vector of values. | 
      
  | 
  inline | 
Set value for the element specified by row and columns.
| theRow | [in] the row to change. | 
| theCol | [in] the column to change. | 
| theValue | [in] the value to set.s | 
      
  | 
  inline | 
Translate the matrix on the passed vector.
| theVec | [in] the translation vector. | 
      
  | 
  inline | 
Transpose the matrix.
      
  | 
  inline | 
Transpose the matrix.
 1.8.10