Open CASCADE Technology 6.6.0
|
The general abstract class Geometry in 2D space describes
the common behaviour of all the geometric entities.
All the objects derived from this class can be move with a
geometric transformation. Only the transformations which
doesn't modify the nature of the geometry are available in
this package.
The method Transform which defines a general transformation
is deferred. The other specifics transformations used the
method Transform.
All the following transformations modify the object itself.
Warning
Only transformations which do not modify the nature
of the geometry can be applied to Geom2d objects:
this is the case with translations, rotations,
symmetries and scales; this is also the case with
gp_Trsf2d composite transformations which are
used to define the geometric transformations applied
using the Transform or Transformed functions.
Note: Geometry defines the "prototype" of the
abstract method Transform which is defined for each
concrete type of derived object. All other
transformations are implemented using the Transform method.
#include <Geom2d_Geometry.hxx>
Public Member Functions | |
void | Mirror (const gp_Pnt2d &P) |
Performs the symmetrical transformation of a Geometry with respect to the point P which is the center of the symmetry and assigns the result to this geometric object. | |
void | Mirror (const gp_Ax2d &A) |
Performs the symmetrical transformation of a Geometry with respect to an axis placement which is the axis of the symmetry. | |
void | Rotate (const gp_Pnt2d &P, const Standard_Real Ang) |
Rotates a Geometry. P is the center of the rotation. Ang is the angular value of the rotation in radians. | |
void | Scale (const gp_Pnt2d &P, const Standard_Real S) |
Scales a Geometry. S is the scaling value. | |
void | Translate (const gp_Vec2d &V) |
Translates a Geometry. V is the vector of the tanslation. | |
void | Translate (const gp_Pnt2d &P1, const gp_Pnt2d &P2) |
Translates a Geometry from the point P1 to the point P2. | |
virtual void | Transform (const gp_Trsf2d &T)=0 |
Transformation of a geometric object. This tansformation can be a translation, a rotation, a symmetry, a scaling or a complex transformation obtained by combination of the previous elementaries transformations. (see class Transformation of the package Geom2d). //! The following transformations have the same properties as the previous ones but they don't modified the object itself. A copy of the object is returned. | |
Handle_Geom2d_Geometry | Mirrored (const gp_Pnt2d &P) const |
Handle_Geom2d_Geometry | Mirrored (const gp_Ax2d &A) const |
Handle_Geom2d_Geometry | Rotated (const gp_Pnt2d &P, const Standard_Real Ang) const |
Handle_Geom2d_Geometry | Scaled (const gp_Pnt2d &P, const Standard_Real S) const |
Handle_Geom2d_Geometry | Transformed (const gp_Trsf2d &T) const |
Handle_Geom2d_Geometry | Translated (const gp_Vec2d &V) const |
Handle_Geom2d_Geometry | Translated (const gp_Pnt2d &P1, const gp_Pnt2d &P2) const |
virtual Handle_Geom2d_Geometry | Copy () const =0 |
virtual Handle_Geom2d_Geometry Geom2d_Geometry::Copy | ( | ) | const [pure virtual] |
Implemented in Geom2d_CartesianPoint, Geom2d_Direction, Geom2d_VectorWithMagnitude, Geom2d_AxisPlacement, Geom2d_Line, Geom2d_Circle, Geom2d_Ellipse, Geom2d_Hyperbola, Geom2d_Parabola, Geom2d_BezierCurve, Geom2d_BSplineCurve, Geom2d_TrimmedCurve, Geom2d_OffsetCurve, Bisector_BisecAna, Bisector_BisecPC, and Bisector_BisecCC.
void Geom2d_Geometry::Mirror | ( | const gp_Ax2d & | A | ) |
void Geom2d_Geometry::Mirror | ( | const gp_Pnt2d & | P | ) |
Handle_Geom2d_Geometry Geom2d_Geometry::Mirrored | ( | const gp_Pnt2d & | P | ) | const |
Handle_Geom2d_Geometry Geom2d_Geometry::Mirrored | ( | const gp_Ax2d & | A | ) | const |
void Geom2d_Geometry::Rotate | ( | const gp_Pnt2d & | P, |
const Standard_Real | Ang | ||
) |
Handle_Geom2d_Geometry Geom2d_Geometry::Rotated | ( | const gp_Pnt2d & | P, |
const Standard_Real | Ang | ||
) | const |
void Geom2d_Geometry::Scale | ( | const gp_Pnt2d & | P, |
const Standard_Real | S | ||
) |
Handle_Geom2d_Geometry Geom2d_Geometry::Scaled | ( | const gp_Pnt2d & | P, |
const Standard_Real | S | ||
) | const |
virtual void Geom2d_Geometry::Transform | ( | const gp_Trsf2d & | T | ) | [pure virtual] |
Implemented in Geom2d_CartesianPoint, Geom2d_Direction, Geom2d_VectorWithMagnitude, Geom2d_AxisPlacement, Geom2d_Line, Geom2d_Circle, Geom2d_Ellipse, Geom2d_Hyperbola, Geom2d_Parabola, Geom2d_BezierCurve, Geom2d_BSplineCurve, Geom2d_TrimmedCurve, Geom2d_OffsetCurve, Bisector_BisecAna, Bisector_BisecPC, and Bisector_BisecCC.
Handle_Geom2d_Geometry Geom2d_Geometry::Transformed | ( | const gp_Trsf2d & | T | ) | const |
void Geom2d_Geometry::Translate | ( | const gp_Vec2d & | V | ) |
Handle_Geom2d_Geometry Geom2d_Geometry::Translated | ( | const gp_Vec2d & | V | ) | const |
Handle_Geom2d_Geometry Geom2d_Geometry::Translated | ( | const gp_Pnt2d & | P1, |
const gp_Pnt2d & | P2 | ||
) | const |