Describes a two column, two row matrix. This sort of object is used in various vectorial or matrix computations.
More...
|
| gp_Mat2d () |
| Creates a matrix with null coefficients.
|
|
| gp_Mat2d (const gp_XY &theCol1, const gp_XY &theCol2) |
| theCol1, theCol2 are the 2 columns of the matrix.
|
|
void | SetCol (const Standard_Integer theCol, const gp_XY &theValue) |
| Assigns the two coordinates of theValue to the column of range theCol of this matrix Raises OutOfRange if theCol < 1 or theCol > 2.
|
|
void | SetCols (const gp_XY &theCol1, const gp_XY &theCol2) |
| Assigns the number pairs theCol1, theCol2 to the two columns of this matrix.
|
|
void | SetDiagonal (const Standard_Real theX1, const Standard_Real theX2) |
| Modifies the main diagonal of the matrix.
|
|
void | SetIdentity () |
| Modifies this matrix, so that it represents the Identity matrix.
|
|
void | SetRotation (const Standard_Real theAng) |
| Modifies this matrix, so that it represents a rotation. theAng is the angular value in radian of the rotation.
|
|
void | SetRow (const Standard_Integer theRow, const gp_XY &theValue) |
| Assigns the two coordinates of theValue to the row of index theRow of this matrix. Raises OutOfRange if theRow < 1 or theRow > 2.
|
|
void | SetRows (const gp_XY &theRow1, const gp_XY &theRow2) |
| Assigns the number pairs theRow1, theRow2 to the two rows of this matrix.
|
|
void | SetScale (const Standard_Real theS) |
| Modifies the matrix such that it represents a scaling transformation, where theS is the scale factor :
|
|
void | SetValue (const Standard_Integer theRow, const Standard_Integer theCol, const Standard_Real theValue) |
| Assigns <theValue> to the coefficient of row theRow, column theCol of this matrix. Raises OutOfRange if theRow < 1 or theRow > 2 or theCol < 1 or theCol > 2.
|
|
gp_XY | Column (const Standard_Integer theCol) const |
| Returns the column of theCol index. Raises OutOfRange if theCol < 1 or theCol > 2.
|
|
Standard_Real | Determinant () const |
| Computes the determinant of the matrix.
|
|
gp_XY | Diagonal () const |
| Returns the main diagonal of the matrix.
|
|
gp_XY | Row (const Standard_Integer theRow) const |
| Returns the row of index theRow. Raised if theRow < 1 or theRow > 2.
|
|
const Standard_Real & | Value (const Standard_Integer theRow, const Standard_Integer theCol) const |
| Returns the coefficient of range (ttheheRow, theCol) Raises OutOfRange if theRow < 1 or theRow > 2 or theCol < 1 or theCol > 2.
|
|
const Standard_Real & | operator() (const Standard_Integer theRow, const Standard_Integer theCol) const |
|
Standard_Real & | ChangeValue (const Standard_Integer theRow, const Standard_Integer theCol) |
| Returns the coefficient of range (theRow, theCol) Raises OutOfRange if theRow < 1 or theRow > 2 or theCol < 1 or theCol > 2.
|
|
Standard_Real & | operator() (const Standard_Integer theRow, const Standard_Integer theCol) |
|
Standard_Boolean | IsSingular () const |
| Returns true if this matrix is singular (and therefore, cannot be inverted). The Gauss LU decomposition is used to invert the matrix so the matrix is considered as singular if the largest pivot found is lower or equal to Resolution from gp.
|
|
void | Add (const gp_Mat2d &Other) |
|
void | operator+= (const gp_Mat2d &theOther) |
|
gp_Mat2d | Added (const gp_Mat2d &theOther) const |
| Computes the sum of this matrix and the matrix theOther.for each coefficient of the matrix :
|
|
gp_Mat2d | operator+ (const gp_Mat2d &theOther) const |
|
void | Divide (const Standard_Real theScalar) |
|
void | operator/= (const Standard_Real theScalar) |
|
gp_Mat2d | Divided (const Standard_Real theScalar) const |
| Divides all the coefficients of the matrix by a scalar.
|
|
gp_Mat2d | operator/ (const Standard_Real theScalar) const |
|
void | Invert () |
|
gp_Mat2d | Inverted () const |
| Inverses the matrix and raises exception if the matrix is singular.
|
|
gp_Mat2d | Multiplied (const gp_Mat2d &theOther) const |
|
gp_Mat2d | operator* (const gp_Mat2d &theOther) const |
|
void | Multiply (const gp_Mat2d &theOther) |
| Computes the product of two matrices <me> * <theOther>
|
|
void | PreMultiply (const gp_Mat2d &theOther) |
| Modifies this matrix by premultiplying it by the matrix Other <me> = theOther * <me>.
|
|
gp_Mat2d | Multiplied (const Standard_Real theScalar) const |
|
gp_Mat2d | operator* (const Standard_Real theScalar) const |
|
void | Multiply (const Standard_Real theScalar) |
| Multiplies all the coefficients of the matrix by a scalar.
|
|
void | operator*= (const Standard_Real theScalar) |
|
void | Power (const Standard_Integer theN) |
|
gp_Mat2d | Powered (const Standard_Integer theN) const |
| computes <me> = <me> * <me> * .......* <me>, theN time. if theN = 0 <me> = Identity if theN < 0 <me> = <me>.Invert() *...........* <me>.Invert(). If theN < 0 an exception can be raised if the matrix is not inversible
|
|
void | Subtract (const gp_Mat2d &theOther) |
|
void | operator-= (const gp_Mat2d &theOther) |
|
gp_Mat2d | Subtracted (const gp_Mat2d &theOther) const |
| Computes for each coefficient of the matrix :
|
|
gp_Mat2d | operator- (const gp_Mat2d &theOther) const |
|
void | Transpose () |
|
gp_Mat2d | Transposed () const |
| Transposes the matrix. A(j, i) -> A (i, j)
|
|
Describes a two column, two row matrix. This sort of object is used in various vectorial or matrix computations.