OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    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

    constexpr gp_Circ2d () noexcept
     creates an indefinite circle.
    constexpr gp_Circ2d (const gp_Ax2d &theXAxis, const double theRadius, const bool theIsSense=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.
    constexpr gp_Circ2d (const gp_Ax22d &theAxis, const double 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.
    constexpr void SetLocation (const gp_Pnt2d &theP) noexcept
     Changes the location point (center) of the circle.
    constexpr void SetXAxis (const gp_Ax2d &theA)
     Changes the X axis of the circle.
    constexpr void SetAxis (const gp_Ax22d &theA) noexcept
     Changes the X axis of the circle.
    constexpr void SetYAxis (const gp_Ax2d &theA)
     Changes the Y axis of the circle.
    void SetRadius (const double 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.
    constexpr double Area () const noexcept
     Computes the area of the circle.
    constexpr void Coefficients (double &theA, double &theB, double &theC, double &theD, double &theE, double &theF) const noexcept
     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.
    bool Contains (const gp_Pnt2d &theP, const double theLinearTolerance) const noexcept
     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>.
    double Distance (const gp_Pnt2d &theP) const noexcept
     Computes the minimum of distance between the point theP and any point on the circumference of the circle.
    double SquareDistance (const gp_Pnt2d &theP) const noexcept
     Computes the square distance between <me> and the point theP.
    constexpr double Length () const noexcept
     computes the circumference of the circle.
    constexpr const gp_Pnt2dLocation () const noexcept
     Returns the location point (center) of the circle.
    constexpr double Radius () const noexcept
     Returns the radius value of the circle.
    constexpr const gp_Ax22dAxis () const noexcept
     returns the position of the circle.
    constexpr const gp_Ax22dPosition () const noexcept
     returns the position of the circle. Idem Axis(me).
    gp_Ax2d XAxis () const noexcept
     returns the X axis of the circle.
    gp_Ax2d YAxis () const noexcept
     Returns the Y axis of the circle. Reverses the direction of the circle.
    void Reverse () noexcept
     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 noexcept
     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.
    constexpr bool IsDirect () const noexcept
     Returns true if the local coordinate system is direct and false in the other case.
    void Mirror (const gp_Pnt2d &theP) noexcept
    gp_Circ2d Mirrored (const gp_Pnt2d &theP) const noexcept
     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) noexcept
    gp_Circ2d Mirrored (const gp_Ax2d &theA) const noexcept
     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 double theAng)
    gp_Circ2d Rotated (const gp_Pnt2d &theP, const double 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 double theS)
    gp_Circ2d Scaled (const gp_Pnt2d &theP, const double 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.
    constexpr void Translate (const gp_Vec2d &theV) noexcept
    constexpr gp_Circ2d Translated (const gp_Vec2d &theV) const noexcept
     Translates a circle in the direction of the vector theV. The magnitude of the translation is the vector's magnitude.
    constexpr void Translate (const gp_Pnt2d &theP1, const gp_Pnt2d &theP2) noexcept
    constexpr gp_Circ2d Translated (const gp_Pnt2d &theP1, const gp_Pnt2d &theP2) const noexcept
     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 ( )
    inlineconstexprnoexcept

    creates an indefinite circle.

    ◆ gp_Circ2d() [2/3]

    gp_Circ2d::gp_Circ2d ( const gp_Ax2d & theXAxis,
    const double theRadius,
    const bool theIsSense = true )
    inlineconstexpr

    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.

    ◆ gp_Circ2d() [3/3]

    gp_Circ2d::gp_Circ2d ( const gp_Ax22d & theAxis,
    const double theRadius )
    inlineconstexpr

    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.

    Member Function Documentation

    ◆ Area()

    double gp_Circ2d::Area ( ) const
    inlineconstexprnoexcept

    Computes the area of the circle.

    ◆ Axis()

    const gp_Ax22d & gp_Circ2d::Axis ( ) const
    inlineconstexprnoexcept

    returns the position of the circle.

    ◆ Coefficients()

    void gp_Circ2d::Coefficients ( double & theA,
    double & theB,
    double & theC,
    double & theD,
    double & theE,
    double & theF ) const
    inlineconstexprnoexcept

    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()

    bool gp_Circ2d::Contains ( const gp_Pnt2d & theP,
    const double theLinearTolerance ) const
    inlinenoexcept

    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()

    double gp_Circ2d::Distance ( const gp_Pnt2d & theP) const
    inlinenoexcept

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

    ◆ IsDirect()

    bool gp_Circ2d::IsDirect ( ) const
    inlineconstexprnoexcept

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

    ◆ Length()

    double gp_Circ2d::Length ( ) const
    inlineconstexprnoexcept

    computes the circumference of the circle.

    ◆ Location()

    const gp_Pnt2d & gp_Circ2d::Location ( ) const
    inlineconstexprnoexcept

    Returns the location point (center) of the circle.

    ◆ Mirror() [1/2]

    void gp_Circ2d::Mirror ( const gp_Ax2d & theA)
    noexcept

    ◆ Mirror() [2/2]

    void gp_Circ2d::Mirror ( const gp_Pnt2d & theP)
    noexcept

    ◆ Mirrored() [1/2]

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

    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
    nodiscardnoexcept

    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
    inlineconstexprnoexcept

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

    ◆ Radius()

    double gp_Circ2d::Radius ( ) const
    inlineconstexprnoexcept

    Returns the radius value of the circle.

    ◆ Reverse()

    void gp_Circ2d::Reverse ( )
    inlinenoexcept

    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
    inlinenodiscardnoexcept

    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 double theAng )
    inline

    ◆ Rotated()

    gp_Circ2d gp_Circ2d::Rotated ( const gp_Pnt2d & theP,
    const double theAng ) const
    inlinenodiscard

    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 double theS )
    inline

    ◆ Scaled()

    gp_Circ2d gp_Circ2d::Scaled ( const gp_Pnt2d & theP,
    const double theS ) const
    inlinenodiscard

    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)
    inlineconstexprnoexcept

    Changes the X axis of the circle.

    ◆ SetLocation()

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

    Changes the location point (center) of the circle.

    ◆ SetRadius()

    void gp_Circ2d::SetRadius ( const double 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)
    inlineconstexpr

    Changes the X axis of the circle.

    ◆ SetYAxis()

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

    Changes the Y axis of the circle.

    ◆ SquareDistance()

    double gp_Circ2d::SquareDistance ( const gp_Pnt2d & theP) const
    inlinenoexcept

    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
    inlinenodiscard

    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 )
    inlineconstexprnoexcept

    ◆ Translate() [2/2]

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

    ◆ Translated() [1/2]

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

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

    ◆ Translated() [2/2]

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

    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
    inlinenoexcept

    returns the X axis of the circle.

    ◆ YAxis()

    gp_Ax2d gp_Circ2d::YAxis ( ) const
    inlinenoexcept

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


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