// 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_MakeHyperbola_HeaderFile #define _GCE2d_MakeHyperbola_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _Handle_Geom2d_Hyperbola_HeaderFile #include #endif #ifndef _GCE2d_Root_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif class Geom2d_Hyperbola; class StdFail_NotDone; class gp_Hypr2d; class gp_Ax2d; class gp_Ax22d; class gp_Pnt2d; //!This class implements the following algorithms used to
//! create Hyperbola from Geom2d.
//! * Create an Hyperbola from two apex and the center.
//! Defines the main branch of an hyperbola.
//! The parameterization range is ]-infinite,+infinite[
//! It is possible to get the other branch and the two conjugate
//! branches of the main branch.
class GCE2d_MakeHyperbola : 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 an Hyperbola from a non persistent one from package gp
Standard_EXPORT GCE2d_MakeHyperbola(const gp_Hypr2d& H); //! MajorAxis is the "XAxis" of the hyperbola.
//! The major radius of the hyperbola is on this "XAxis" and
//! the minor radius is on the "YAxis" of the hyperbola.
//! The status is "NegativeRadius" if MajorRadius < 0.0 or if
//! MinorRadius < 0.0
Standard_EXPORT GCE2d_MakeHyperbola(const gp_Ax2d& MajorAxis,const Standard_Real MajorRadius,const Standard_Real MinorRadius,const Standard_Boolean Sense); //! Axis is the local coordinate system of the hyperbola.
//! The major radius of the hyperbola is on this "XAxis" and
//! the minor radius is on the "YAxis" of the hyperbola.
//! The status is "NegativeRadius" if MajorRadius < 0.0 or if
//! MinorRadius < 0.0
Standard_EXPORT GCE2d_MakeHyperbola(const gp_Ax22d& Axis,const Standard_Real MajorRadius,const Standard_Real MinorRadius); //! Creates a hyperbol centered on the origin of the coordinate system
//! Axis, with major and minor radii MajorRadius and
//! MinorRadius, where the major axis is the "X Axis"
//! of Axis (Axis is the local coordinate system of the hyperbola).
//! The implicit orientation of the ellipse is:
//! - the sense defined by Axis or H,
//! - the sense defined by points Center, S1 and S2,
//! - the trigonometric sense if Sense is not given or is true, or
//! - the opposite sense if Sense is false.
//! Warning
//! If an error occurs (that is, when IsDone returns
//! false), the Status function returns:
//! - gce_NegativeRadius if MajorRadius or
//! MinorRadius is less than 0.0, or
//! - gce_InvertAxis if the major radius defined by
//! Center and S1 is less than the minor radius
//! defined by Center, S1 and S2.Make an Hyperbola with its center and two apexes.
Standard_EXPORT GCE2d_MakeHyperbola(const gp_Pnt2d& S1,const gp_Pnt2d& S2,const gp_Pnt2d& Center); //! Returns the constructed hyperbola.
//! Exceptions: StdFail_NotDone if no hyperbola is constructed.
Standard_EXPORT const Handle_Geom2d_Hyperbola& Value() const; Standard_EXPORT const Handle_Geom2d_Hyperbola& Operator() const; Standard_EXPORT operator Handle_Geom2d_Hyperbola() const; protected: private: Handle_Geom2d_Hyperbola TheHyperbola; }; // other Inline functions and methods (like "C++: function call" methods) #endif