Open CASCADE Technology 6.6.0
|
Describes how to construct the following elementary transformations
More...
#include <Geom_Transformation.hxx>
Public Member Functions | |
Geom_Transformation () | |
Creates an identity transformation. | |
Geom_Transformation (const gp_Trsf &T) | |
Creates a transient copy of T. | |
void | SetMirror (const gp_Pnt &P) |
Makes the transformation into a symmetrical transformation with respect to a point P. P is the center of the symmetry. | |
void | SetMirror (const gp_Ax1 &A1) |
Makes the transformation into a symmetrical transformation with respect to an axis A1. A1 is the center of the axial symmetry. | |
void | SetMirror (const gp_Ax2 &A2) |
Makes the transformation into a symmetrical transformation with respect to a plane. The plane of the symmetry is defined with the axis placement A2. It is the plane (Location, XDirection, YDirection). | |
void | SetRotation (const gp_Ax1 &A1, const Standard_Real Ang) |
Makes the transformation into a rotation. A1 is the axis rotation and Ang is the angular value of the rotation in radians. | |
void | SetScale (const gp_Pnt &P, const Standard_Real S) |
Makes the transformation into a scale. P is the center of the scale and S is the scaling value. | |
void | SetTransformation (const gp_Ax3 &FromSystem1, const gp_Ax3 &ToSystem2) |
Makes a transformation allowing passage from the coordinate system "FromSystem1" to the coordinate system "ToSystem2". Example : In a C++ implementation : Real x1, y1, z1; // are the coordinates of a point in the // local system FromSystem1 Real x2, y2, z2; // are the coordinates of a point in the // local system ToSystem2 gp_Pnt P1 (x1, y1, z1) Geom_Transformation T; T.SetTransformation (FromSystem1, ToSystem2); gp_Pnt P2 = P1.Transformed (T); P2.Coord (x2, y2, z2); | |
void | SetTransformation (const gp_Ax3 &ToSystem) |
Makes the transformation allowing passage from the basic coordinate system {P(0.,0.,0.), VX (1.,0.,0.), VY (0.,1.,0.), VZ (0., 0. ,1.) } to the local coordinate system defined with the Ax2 ToSystem. Same utilisation as the previous method. FromSystem1 is defaulted to the absolute coordinate system. | |
void | SetTranslation (const gp_Vec &V) |
Makes the transformation into a translation. V is the vector of the translation. | |
void | SetTranslation (const gp_Pnt &P1, const gp_Pnt &P2) |
Makes the transformation into a translation from the point P1 to the point P2. | |
void | SetTrsf (const gp_Trsf &T) |
Converts the gp_Trsf transformation T into this transformation. | |
Standard_Boolean | IsNegative () const |
Checks whether this transformation is an indirect transformation: returns true if the determinant of the matrix of the vectorial part of the transformation is less than 0. | |
gp_TrsfForm | Form () const |
Returns the nature of this transformation as a value of the gp_TrsfForm enumeration. | |
Standard_Real | ScaleFactor () const |
Returns the scale value of the transformation. | |
const gp_Trsf & | Trsf () const |
Returns a non transient copy of <me>. | |
Standard_Real | Value (const Standard_Integer Row, const Standard_Integer Col) const |
Returns the coefficients of the global matrix of tranformation. It is a 3 rows X 4 columns matrix. Raised if Row < 1 or Row > 3 or Col < 1 or Col > 4 Computes the reverse transformation. | |
void | Invert () |
Raised if the the transformation is singular. This means that the ScaleFactor is lower or equal to Resolution from package gp. | |
Handle_Geom_Transformation | Inverted () const |
Raised if the the transformation is singular. This means that the ScaleFactor is lower or equal to Resolution from package gp. | |
Handle_Geom_Transformation | Multiplied (const Handle< Geom_Transformation > &Other) const |
Computes the transformation composed with Other and <me>. <me> * Other. Returns a new transformation | |
void | Multiply (const Handle< Geom_Transformation > &Other) |
Computes the transformation composed with Other and <me> . <me> = <me> * Other. | |
void | Power (const Standard_Integer N) |
Computes the following composition of transformations if N > 0 <me> * <me> * .......* <me>. if N = 0 Identity if N < 0 <me>.Invert() * .........* <me>.Invert() Raised if N < 0 and if the transformation is not inversible | |
Handle_Geom_Transformation | Powered (const Standard_Integer N) const |
Raised if N < 0 and if the transformation is not inversible | |
void | PreMultiply (const Handle< Geom_Transformation > &Other) |
Computes the matrix of the transformation composed with <me> and Other. <me> = Other * <me> | |
void | Transforms (Standard_Real &X, Standard_Real &Y, Standard_Real &Z) const |
Applies the transformation <me> to the triplet {X, Y, Z}. | |
Handle_Geom_Transformation | Copy () const |
Creates a new object which is a copy of this transformation. |
Geom_Transformation::Geom_Transformation | ( | ) |
Geom_Transformation::Geom_Transformation | ( | const gp_Trsf & | T | ) |
Handle_Geom_Transformation Geom_Transformation::Copy | ( | ) | const |
gp_TrsfForm Geom_Transformation::Form | ( | ) | const |
void Geom_Transformation::Invert | ( | ) |
Handle_Geom_Transformation Geom_Transformation::Inverted | ( | ) | const |
Standard_Boolean Geom_Transformation::IsNegative | ( | ) | const |
Handle_Geom_Transformation Geom_Transformation::Multiplied | ( | const Handle< Geom_Transformation > & | Other | ) | const |
void Geom_Transformation::Multiply | ( | const Handle< Geom_Transformation > & | Other | ) |
void Geom_Transformation::Power | ( | const Standard_Integer | N | ) |
Handle_Geom_Transformation Geom_Transformation::Powered | ( | const Standard_Integer | N | ) | const |
void Geom_Transformation::PreMultiply | ( | const Handle< Geom_Transformation > & | Other | ) |
Standard_Real Geom_Transformation::ScaleFactor | ( | ) | const |
void Geom_Transformation::SetMirror | ( | const gp_Pnt & | P | ) |
void Geom_Transformation::SetMirror | ( | const gp_Ax1 & | A1 | ) |
void Geom_Transformation::SetMirror | ( | const gp_Ax2 & | A2 | ) |
void Geom_Transformation::SetRotation | ( | const gp_Ax1 & | A1, |
const Standard_Real | Ang | ||
) |
void Geom_Transformation::SetScale | ( | const gp_Pnt & | P, |
const Standard_Real | S | ||
) |
void Geom_Transformation::SetTransformation | ( | const gp_Ax3 & | FromSystem1, |
const gp_Ax3 & | ToSystem2 | ||
) |
void Geom_Transformation::SetTransformation | ( | const gp_Ax3 & | ToSystem | ) |
void Geom_Transformation::SetTranslation | ( | const gp_Vec & | V | ) |
void Geom_Transformation::SetTrsf | ( | const gp_Trsf & | T | ) |
void Geom_Transformation::Transforms | ( | Standard_Real & | X, |
Standard_Real & | Y, | ||
Standard_Real & | Z | ||
) | const |
const gp_Trsf& Geom_Transformation::Trsf | ( | ) | const |
Standard_Real Geom_Transformation::Value | ( | const Standard_Integer | Row, |
const Standard_Integer | Col | ||
) | const |