Open CASCADE Technology 7.8.2.dev
gp_Circ2d Class Reference

Describes a circle in the plane (2D space). A circle is defined by its radius and positioned in the plane with a coordinate system (a gp_Ax22d object) as follows: More...

#include <gp_Circ2d.hxx>

Public Member Functions

 gp_Circ2d ()
 creates an indefinite circle.
 
 gp_Circ2d (const gp_Ax2d &theXAxis, const Standard_Real theRadius, const Standard_Boolean theIsSense=Standard_True)
 The location point of theXAxis is the center of the circle. Warnings : It is not forbidden to create a circle with theRadius = 0.0 Raises ConstructionError if theRadius < 0.0. Raised if theRadius < 0.0.
 
 gp_Circ2d (const gp_Ax22d &theAxis, const Standard_Real theRadius)
 theAxis defines the Xaxis and Yaxis of the circle which defines the origin and the sense of parametrization. The location point of theAxis is the center of the circle. Warnings : It is not forbidden to create a circle with theRadius = 0.0 Raises ConstructionError if theRadius < 0.0. Raised if theRadius < 0.0.
 
void SetLocation (const gp_Pnt2d &theP)
 Changes the location point (center) of the circle.
 
void SetXAxis (const gp_Ax2d &theA)
 Changes the X axis of the circle.
 
void SetAxis (const gp_Ax22d &theA)
 Changes the X axis of the circle.
 
void SetYAxis (const gp_Ax2d &theA)
 Changes the Y axis of the circle.
 
void SetRadius (const Standard_Real theRadius)
 Modifies the radius of this circle. This class does not prevent the creation of a circle where theRadius is null. Exceptions Standard_ConstructionError if theRadius is negative.
 
Standard_Real Area () const
 Computes the area of the circle.
 
void Coefficients (Standard_Real &theA, Standard_Real &theB, Standard_Real &theC, Standard_Real &theD, Standard_Real &theE, Standard_Real &theF) const
 Returns the normalized coefficients from the implicit equation of the circle : theA * (X**2) + theB * (Y**2) + 2*theC*(X*Y) + 2*theD*X + 2*theE*Y + theF = 0.0.
 
Standard_Boolean Contains (const gp_Pnt2d &theP, const Standard_Real theLinearTolerance) const
 Does <me> contain theP ? Returns True if the distance between theP and any point on the circumference of the circle is lower of equal to <theLinearTolerance>.
 
Standard_Real Distance (const gp_Pnt2d &theP) const
 Computes the minimum of distance between the point theP and any point on the circumference of the circle.
 
Standard_Real SquareDistance (const gp_Pnt2d &theP) const
 Computes the square distance between <me> and the point theP.
 
Standard_Real Length () const
 computes the circumference of the circle.
 
const gp_Pnt2dLocation () const
 Returns the location point (center) of the circle.
 
Standard_Real Radius () const
 Returns the radius value of the circle.
 
const gp_Ax22dAxis () const
 returns the position of the circle.
 
const gp_Ax22dPosition () const
 returns the position of the circle. Idem Axis(me).
 
gp_Ax2d XAxis () const
 returns the X axis of the circle.
 
gp_Ax2d YAxis () const
 Returns the Y axis of the circle. Reverses the direction of the circle.
 
void Reverse ()
 Reverses the orientation of the local coordinate system of this circle (the "Y Direction" is reversed) and therefore changes the implicit orientation of this circle. Reverse assigns the result to this circle,.
 
gp_Circ2d Reversed () const
 Reverses the orientation of the local coordinate system of this circle (the "Y Direction" is reversed) and therefore changes the implicit orientation of this circle. Reversed creates a new circle.
 
Standard_Boolean IsDirect () const
 Returns true if the local coordinate system is direct and false in the other case.
 
void Mirror (const gp_Pnt2d &theP)
 
gp_Circ2d Mirrored (const gp_Pnt2d &theP) const
 Performs the symmetrical transformation of a circle with respect to the point theP which is the center of the symmetry.
 
void Mirror (const gp_Ax2d &theA)
 
gp_Circ2d Mirrored (const gp_Ax2d &theA) const
 Performs the symmetrical transformation of a circle with respect to an axis placement which is the axis of the symmetry.
 
void Rotate (const gp_Pnt2d &theP, const Standard_Real theAng)
 
gp_Circ2d Rotated (const gp_Pnt2d &theP, const Standard_Real theAng) const
 Rotates a circle. theP is the center of the rotation. Ang is the angular value of the rotation in radians.
 
void Scale (const gp_Pnt2d &theP, const Standard_Real theS)
 
gp_Circ2d Scaled (const gp_Pnt2d &theP, const Standard_Real theS) const
 Scales a circle. theS is the scaling value. Warnings : If theS is negative the radius stay positive but the "XAxis" and the "YAxis" are reversed as for an ellipse.
 
void Transform (const gp_Trsf2d &theT)
 
gp_Circ2d Transformed (const gp_Trsf2d &theT) const
 Transforms a circle with the transformation theT from class Trsf2d.
 
void Translate (const gp_Vec2d &theV)
 
gp_Circ2d Translated (const gp_Vec2d &theV) const
 Translates a circle in the direction of the vector theV. The magnitude of the translation is the vector's magnitude.
 
void Translate (const gp_Pnt2d &theP1, const gp_Pnt2d &theP2)
 
gp_Circ2d Translated (const gp_Pnt2d &theP1, const gp_Pnt2d &theP2) const
 Translates a circle from the point theP1 to the point theP2.
 

Detailed Description

Describes a circle in the plane (2D space). A circle is defined by its radius and positioned in the plane with a coordinate system (a gp_Ax22d object) as follows:

  • the origin of the coordinate system is the center of the circle, and
  • the orientation (direct or indirect) of the coordinate system gives an implicit orientation to the circle (and defines its trigonometric sense). This positioning coordinate system is the "local coordinate system" of the circle. Note: when a gp_Circ2d circle is converted into a Geom2d_Circle circle, some implicit properties of the circle are used explicitly:
  • the implicit orientation corresponds to the direction in which parameter values increase,
  • the starting point for parameterization is that of the "X Axis" of the local coordinate system (i.e. the "X Axis" of the circle). See Also GccAna and Geom2dGcc packages which provide functions for constructing circles defined by geometric constraints gce_MakeCirc2d which provides functions for more complex circle constructions Geom2d_Circle which provides additional functions for constructing circles and works, with the parametric equations of circles in particular gp_Ax22d

Constructor & Destructor Documentation

◆ gp_Circ2d() [1/3]

gp_Circ2d::gp_Circ2d ( )
inline

creates an indefinite circle.

◆ gp_Circ2d() [2/3]

gp_Circ2d::gp_Circ2d ( const gp_Ax2d & theXAxis,
const Standard_Real theRadius,
const Standard_Boolean theIsSense = Standard_True )
inline

The location point of theXAxis is the center of the circle. Warnings : It is not forbidden to create a circle with theRadius = 0.0 Raises ConstructionError if theRadius < 0.0. Raised if theRadius < 0.0.

◆ gp_Circ2d() [3/3]

gp_Circ2d::gp_Circ2d ( const gp_Ax22d & theAxis,
const Standard_Real theRadius )
inline

theAxis defines the Xaxis and Yaxis of the circle which defines the origin and the sense of parametrization. The location point of theAxis is the center of the circle. Warnings : It is not forbidden to create a circle with theRadius = 0.0 Raises ConstructionError if theRadius < 0.0. Raised if theRadius < 0.0.

Member Function Documentation

◆ Area()

Standard_Real gp_Circ2d::Area ( ) const
inline

Computes the area of the circle.

◆ Axis()

const gp_Ax22d & gp_Circ2d::Axis ( ) const
inline

returns the position of the circle.

◆ Coefficients()

void gp_Circ2d::Coefficients ( Standard_Real & theA,
Standard_Real & theB,
Standard_Real & theC,
Standard_Real & theD,
Standard_Real & theE,
Standard_Real & theF ) const
inline

Returns the normalized coefficients from the implicit equation of the circle : theA * (X**2) + theB * (Y**2) + 2*theC*(X*Y) + 2*theD*X + 2*theE*Y + theF = 0.0.

◆ Contains()

Standard_Boolean gp_Circ2d::Contains ( const gp_Pnt2d & theP,
const Standard_Real theLinearTolerance ) const
inline

Does <me> contain theP ? Returns True if the distance between theP and any point on the circumference of the circle is lower of equal to <theLinearTolerance>.

◆ Distance()

Standard_Real gp_Circ2d::Distance ( const gp_Pnt2d & theP) const
inline

Computes the minimum of distance between the point theP and any point on the circumference of the circle.

◆ IsDirect()

Standard_Boolean gp_Circ2d::IsDirect ( ) const
inline

Returns true if the local coordinate system is direct and false in the other case.

◆ Length()

Standard_Real gp_Circ2d::Length ( ) const
inline

computes the circumference of the circle.

◆ Location()

const gp_Pnt2d & gp_Circ2d::Location ( ) const
inline

Returns the location point (center) of the circle.

◆ Mirror() [1/2]

void gp_Circ2d::Mirror ( const gp_Ax2d & theA)

◆ Mirror() [2/2]

void gp_Circ2d::Mirror ( const gp_Pnt2d & theP)

◆ Mirrored() [1/2]

gp_Circ2d gp_Circ2d::Mirrored ( const gp_Ax2d & theA) const

Performs the symmetrical transformation of a circle with respect to an axis placement which is the axis of the symmetry.

◆ Mirrored() [2/2]

gp_Circ2d gp_Circ2d::Mirrored ( const gp_Pnt2d & theP) const

Performs the symmetrical transformation of a circle with respect to the point theP which is the center of the symmetry.

◆ Position()

const gp_Ax22d & gp_Circ2d::Position ( ) const
inline

returns the position of the circle. Idem Axis(me).

◆ Radius()

Standard_Real gp_Circ2d::Radius ( ) const
inline

Returns the radius value of the circle.

◆ Reverse()

void gp_Circ2d::Reverse ( )
inline

Reverses the orientation of the local coordinate system of this circle (the "Y Direction" is reversed) and therefore changes the implicit orientation of this circle. Reverse assigns the result to this circle,.

◆ Reversed()

gp_Circ2d gp_Circ2d::Reversed ( ) const
inline

Reverses the orientation of the local coordinate system of this circle (the "Y Direction" is reversed) and therefore changes the implicit orientation of this circle. Reversed creates a new circle.

◆ Rotate()

void gp_Circ2d::Rotate ( const gp_Pnt2d & theP,
const Standard_Real theAng )
inline

◆ Rotated()

gp_Circ2d gp_Circ2d::Rotated ( const gp_Pnt2d & theP,
const Standard_Real theAng ) const
inline

Rotates a circle. theP is the center of the rotation. Ang is the angular value of the rotation in radians.

◆ Scale()

void gp_Circ2d::Scale ( const gp_Pnt2d & theP,
const Standard_Real theS )
inline

◆ Scaled()

gp_Circ2d gp_Circ2d::Scaled ( const gp_Pnt2d & theP,
const Standard_Real theS ) const
inline

Scales a circle. theS is the scaling value. Warnings : If theS is negative the radius stay positive but the "XAxis" and the "YAxis" are reversed as for an ellipse.

◆ SetAxis()

void gp_Circ2d::SetAxis ( const gp_Ax22d & theA)
inline

Changes the X axis of the circle.

◆ SetLocation()

void gp_Circ2d::SetLocation ( const gp_Pnt2d & theP)
inline

Changes the location point (center) of the circle.

◆ SetRadius()

void gp_Circ2d::SetRadius ( const Standard_Real theRadius)
inline

Modifies the radius of this circle. This class does not prevent the creation of a circle where theRadius is null. Exceptions Standard_ConstructionError if theRadius is negative.

◆ SetXAxis()

void gp_Circ2d::SetXAxis ( const gp_Ax2d & theA)
inline

Changes the X axis of the circle.

◆ SetYAxis()

void gp_Circ2d::SetYAxis ( const gp_Ax2d & theA)
inline

Changes the Y axis of the circle.

◆ SquareDistance()

Standard_Real gp_Circ2d::SquareDistance ( const gp_Pnt2d & theP) const
inline

Computes the square distance between <me> and the point theP.

◆ Transform()

void gp_Circ2d::Transform ( const gp_Trsf2d & theT)
inline

◆ Transformed()

gp_Circ2d gp_Circ2d::Transformed ( const gp_Trsf2d & theT) const
inline

Transforms a circle with the transformation theT from class Trsf2d.

◆ Translate() [1/2]

void gp_Circ2d::Translate ( const gp_Pnt2d & theP1,
const gp_Pnt2d & theP2 )
inline

◆ Translate() [2/2]

void gp_Circ2d::Translate ( const gp_Vec2d & theV)
inline

◆ Translated() [1/2]

gp_Circ2d gp_Circ2d::Translated ( const gp_Pnt2d & theP1,
const gp_Pnt2d & theP2 ) const
inline

Translates a circle from the point theP1 to the point theP2.

◆ Translated() [2/2]

gp_Circ2d gp_Circ2d::Translated ( const gp_Vec2d & theV) const
inline

Translates a circle in the direction of the vector theV. The magnitude of the translation is the vector's magnitude.

◆ XAxis()

gp_Ax2d gp_Circ2d::XAxis ( ) const
inline

returns the X axis of the circle.

◆ YAxis()

gp_Ax2d gp_Circ2d::YAxis ( ) const
inline

Returns the Y axis of the circle. Reverses the direction of the circle.


The documentation for this class was generated from the following file: