// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _GCE2d_MakeCircle_HeaderFile #define _GCE2d_MakeCircle_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _Handle_Geom2d_Circle_HeaderFile #include #endif #ifndef _GCE2d_Root_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif class Geom2d_Circle; class StdFail_NotDone; class gp_Circ2d; class gp_Ax2d; class gp_Ax22d; class gp_Pnt2d; //! This class implements the following algorithms used
//! to create Cirlec from Geom2d.
//!
//! * Create a Circle parallel to another and passing
//! though a point.
//! * Create a Circle parallel to another at the distance
//! Dist.
//! * Create a Circle passing through 3 points.
//! * Create a Circle with its center and the normal of its
//! plane and its radius.
//! * Create a Circle with its axis and radius.
class GCE2d_MakeCircle : public GCE2d_Root { public: void* operator new(size_t,void* anAddress) { return anAddress; } void* operator new(size_t size) { return Standard::Allocate(size); } void operator delete(void *anAddress) { if (anAddress) Standard::Free((Standard_Address&)anAddress); } //! creates a circle from a non persistent one.
Standard_EXPORT GCE2d_MakeCircle(const gp_Circ2d& C); //! A is the "XAxis" of the circle which defines the origin
//! of parametrization.
//! It is not forbidden to create a circle with Radius = 0.0
//! The status is "NegativeRadius" if Radius < 0.
Standard_EXPORT GCE2d_MakeCircle(const gp_Ax2d& A,const Standard_Real Radius,const Standard_Boolean Sense = Standard_True); //! A is the local coordinate system of the circle which defines
//! the origin of parametrization.
//! It is not forbidden to create a circle with Radius = 0.0
//! The status is "NegativeRadius" if Radius < 0.
Standard_EXPORT GCE2d_MakeCircle(const gp_Ax22d& A,const Standard_Real Radius); //! Make a Circle from Geom2d parallel to another
//! Circ with a distance .
//! If Dist is greater than zero the result is enclosing
//! the circle , else the result is enclosed by the
//! circle .
Standard_EXPORT GCE2d_MakeCircle(const gp_Circ2d& Circ,const Standard_Real Dist); //! Make a Circle from Geom2d parallel to another
//! Circ and passing through a Pnt .
Standard_EXPORT GCE2d_MakeCircle(const gp_Circ2d& Circ,const gp_Pnt2d& Point); //! Make a Circ from gp passing through 3
//! Pnt2d ,,.
Standard_EXPORT GCE2d_MakeCircle(const gp_Pnt2d& P1,const gp_Pnt2d& P2,const gp_Pnt2d& P3); //! Make a Circ from geom2d by its center an radius.
Standard_EXPORT GCE2d_MakeCircle(const gp_Pnt2d& P,const Standard_Real Radius,const Standard_Boolean Sense = Standard_True); //! Makes a Circle from geom2d with its center
//!
and a point giving the radius.
//! If Sense is true the local coordinate system of
//! the solution is direct and non direct in the other case.
//! Warning
//! The MakeCircle class does not prevent the
//! construction of a circle with a null radius.
//! If an error occurs (that is, when IsDone returns
//! false), the Status function returns:
//! - gce_NegativeRadius if Radius is less than 0.0, or
//! - gce_IntersectionError if points P1, P2 and P3
//! are collinear and the three are not coincident.
Standard_EXPORT GCE2d_MakeCircle(const gp_Pnt2d& Center,const gp_Pnt2d& Point,const Standard_Boolean Sense = Standard_True); //! Returns the constructed circle.
//! Exceptions StdFail_NotDone if no circle is constructed.
Standard_EXPORT const Handle_Geom2d_Circle& Value() const; Standard_EXPORT const Handle_Geom2d_Circle& Operator() const; Standard_EXPORT operator Handle_Geom2d_Circle() const; protected: private: Handle_Geom2d_Circle TheCircle; }; // other Inline functions and methods (like "C++: function call" methods) #endif