#include <gp_Mat2d.hxx>
Public Member Functions | |
void * | operator new (size_t, void *anAddress) |
void * | operator new (size_t size) |
void | operator delete (void *anAddress) |
gp_Mat2d () | |
Creates a matrix with null coefficients. . | |
Standard_EXPORT | gp_Mat2d (const gp_XY &Col1, const gp_XY &Col2) |
Col1, Col2 are the 2 columns of the matrix. . | |
Standard_EXPORT void | SetCol (const Standard_Integer Col, const gp_XY &Value) |
Assigns the two coordinates of Value to the column of range Col of this matrix Raises OutOfRange if Col < 1 or Col > 2. . | |
Standard_EXPORT void | SetCols (const gp_XY &Col1, const gp_XY &Col2) |
Assigns the number pairs Col1, Col2 to the two columns of this matrix . | |
void | SetDiagonal (const Standard_Real X1, const Standard_Real X2) |
Modifies the main diagonal of the matrix. <me>.Value (1, 1) = X1 <me>.Value (2, 2) = X2 The other coefficients of the matrix are not modified. . | |
void | SetIdentity () |
Modifies this matrix, so that it represents the Identity matrix. . | |
void | SetRotation (const Standard_Real Ang) |
Modifies this matrix, so that it representso a rotation. Ang is the angular value in radian of the rotation. . | |
Standard_EXPORT void | SetRow (const Standard_Integer Row, const gp_XY &Value) |
Assigns the two coordinates of Value to the row of index Row of this matrix. Raises OutOfRange if Row < 1 or Row > 2. . | |
Standard_EXPORT void | SetRows (const gp_XY &Row1, const gp_XY &Row2) |
Assigns the number pairs Row1, Row2 to the two rows of this matrix. . | |
void | SetScale (const Standard_Real S) |
Modifies the matrix such that it represents a scaling transformation, where S is the scale factor : | S 0.0 | <me> = | 0.0 S | . | |
void | SetValue (const Standard_Integer Row, const Standard_Integer Col, const Standard_Real Value) |
Assigns <value> to the coefficient of row Row, column Col of this matrix. Raises OutOfRange if Row < 1 or Row > 2 or Col < 1 or Col > 2 . | |
Standard_EXPORT gp_XY | Column (const Standard_Integer Col) const |
Returns the column of Col index. Raises OutOfRange if Col < 1 or Col > 2 . | |
Standard_Real | Determinant () const |
Computes the determinant of the matrix. . | |
Standard_EXPORT gp_XY | Diagonal () const |
Returns the main diagonal of the matrix. . | |
Standard_EXPORT gp_XY | Row (const Standard_Integer Row) const |
Returns the row of index Row. //! Raised if Row < 1 or Row > 2 . | |
const Standard_Real & | Value (const Standard_Integer Row, const Standard_Integer Col) const |
Returns the coefficient of range (Row, Col) Raises OutOfRange if Row < 1 or Row > 2 or Col < 1 or Col > 2 . | |
const Standard_Real & | operator() (const Standard_Integer Row, const Standard_Integer Col) const |
Standard_Real & | ChangeValue (const Standard_Integer Row, const Standard_Integer Col) |
Returns the coefficient of range (Row, Col) Raises OutOfRange if Row < 1 or Row > 2 or Col < 1 or Col > 2 . | |
Standard_Real & | operator() (const Standard_Integer Row, const Standard_Integer Col) |
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 &Other) |
gp_Mat2d | Added (const gp_Mat2d &Other) const |
Computes the sum of this matrix and the matrix Other.for each coefficient of the matrix : <me>.Coef(i,j) + <other>.Coef(i,j) Note: - operator += assigns the result to this matrix, while - operator + creates a new one. . | |
gp_Mat2d | operator+ (const gp_Mat2d &Other) const |
void | Divide (const Standard_Real Scalar) |
void | operator/= (const Standard_Real Scalar) |
gp_Mat2d | Divided (const Standard_Real Scalar) const |
Divides all the coefficients of the matrix by a scalar. . | |
gp_Mat2d | operator/ (const Standard_Real Scalar) const |
Standard_EXPORT void | Invert () |
gp_Mat2d | Inverted () const |
Inverses the matrix and raises exception if the matrix is singular. . | |
gp_Mat2d | Multiplied (const gp_Mat2d &Other) const |
gp_Mat2d | operator * (const gp_Mat2d &Other) const |
void | Multiply (const gp_Mat2d &Other) |
Computes the product of two matrices <me> * <other> . | |
void | PreMultiply (const gp_Mat2d &Other) |
Modifies this matrix by premultiplying it by the matrix Other <me> = Other * <me>. . | |
gp_Mat2d | Multiplied (const Standard_Real Scalar) const |
gp_Mat2d | operator * (const Standard_Real Scalar) const |
void | Multiply (const Standard_Real Scalar) |
Multiplies all the coefficients of the matrix by a scalar. . | |
void | operator *= (const Standard_Real Scalar) |
Standard_EXPORT void | Power (const Standard_Integer N) |
gp_Mat2d | Powered (const Standard_Integer N) const |
computes <me> = <me> * <me> * .......* <me>, N time. if N = 0 <me> = Identity if N < 0 <me> = <me>.Invert() *...........* <me>.Invert(). If N < 0 an exception can be raised if the matrix is not inversible | |
void | Subtract (const gp_Mat2d &Other) |
void | operator-= (const gp_Mat2d &Other) |
gp_Mat2d | Subtracted (const gp_Mat2d &Other) const |
Computes for each coefficient of the matrix : <me>.Coef(i,j) - <other>.Coef(i,j) . | |
gp_Mat2d | operator- (const gp_Mat2d &Other) const |
void | Transpose () |
gp_Mat2d | Transposed () const |
Transposes the matrix. A(j, i) -> A (i, j) . | |
Standard_Real & | _CSFDB_Getgp_Mat2dmatrix (const Standard_Integer i1, const Standard_Integer i2) |
Private Attributes | |
Standard_Real | matrix [2][2] |
Friends | |
Standard_EXPORT friend Handle_Standard_Type & | gp_Mat2d_Type_ () |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|