// 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 _CPnts_AbscissaPoint_HeaderFile #define _CPnts_AbscissaPoint_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _CPnts_MyRootFunction_HeaderFile #include #endif class StdFail_NotDone; class Standard_ConstructionError; class Adaptor3d_Curve; class Adaptor2d_Curve2d; //! the algorithm computes a point on a curve at a given
//! distance from another point on the curve
//!
//! We can instantiates with
//! Curve from Adaptor3d, Pnt from gp, Vec from gp
//!
//! or
//! Curve2d from Adaptor2d, Pnt2d from gp, Vec2d from gp
class CPnts_AbscissaPoint { 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); } //! Computes the length of the Curve .
Standard_EXPORT static Standard_Real Length(const Adaptor3d_Curve& C) ; //! Computes the length of the Curve .
Standard_EXPORT static Standard_Real Length(const Adaptor2d_Curve2d& C) ; //! Computes the length of the Curve with the given tolerance.
Standard_EXPORT static Standard_Real Length(const Adaptor3d_Curve& C,const Standard_Real Tol) ; //! Computes the length of the Curve with the given tolerance.
Standard_EXPORT static Standard_Real Length(const Adaptor2d_Curve2d& C,const Standard_Real Tol) ; //! Computes the length of the Curve between and .
Standard_EXPORT static Standard_Real Length(const Adaptor3d_Curve& C,const Standard_Real U1,const Standard_Real U2) ; //! Computes the length of the Curve between and .
Standard_EXPORT static Standard_Real Length(const Adaptor2d_Curve2d& C,const Standard_Real U1,const Standard_Real U2) ; //! Computes the length of the Curve between and with the given tolerance.
Standard_EXPORT static Standard_Real Length(const Adaptor3d_Curve& C,const Standard_Real U1,const Standard_Real U2,const Standard_Real Tol) ; //! Computes the length of the Curve between and with the given tolerance.
//! creation of a indefinite AbscissaPoint.
Standard_EXPORT static Standard_Real Length(const Adaptor2d_Curve2d& C,const Standard_Real U1,const Standard_Real U2,const Standard_Real Tol) ; Standard_EXPORT CPnts_AbscissaPoint(); //! the algorithm computes a point on a curve at the
//! distance from the point of parameter .
//! is the error allowed in the computation.
//! The computed point can be outside of the curve 's bounds.
Standard_EXPORT CPnts_AbscissaPoint(const Adaptor3d_Curve& C,const Standard_Real Abscissa,const Standard_Real U0,const Standard_Real Resolution); //! the algorithm computes a point on a curve at the
//! distance from the point of parameter .
//! is the error allowed in the computation.
//! The computed point can be outside of the curve 's bounds.
Standard_EXPORT CPnts_AbscissaPoint(const Adaptor2d_Curve2d& C,const Standard_Real Abscissa,const Standard_Real U0,const Standard_Real Resolution); //! the algorithm computes a point on a curve at the
//! distance from the point of parameter .
//! is the starting value used in the iterative process
//! which find the solution, it must be closed to the final
//! solution
//! is the error allowed in the computation.
//! The computed point can be outside of the curve 's bounds.
Standard_EXPORT CPnts_AbscissaPoint(const Adaptor3d_Curve& C,const Standard_Real Abscissa,const Standard_Real U0,const Standard_Real Ui,const Standard_Real Resolution); //! the algorithm computes a point on a curve at the
//! distance from the point of parameter .
//! is the starting value used in the iterative process
//! which find the solution, it must be closed to the final
//! solution
//! is the error allowed in the computation.
//! The computed point can be outside of the curve 's bounds.
Standard_EXPORT CPnts_AbscissaPoint(const Adaptor2d_Curve2d& C,const Standard_Real Abscissa,const Standard_Real U0,const Standard_Real Ui,const Standard_Real Resolution); //! Initializes the resolution function with .
Standard_EXPORT void Init(const Adaptor3d_Curve& C) ; //! Initializes the resolution function with .
Standard_EXPORT void Init(const Adaptor2d_Curve2d& C) ; //! Initializes the resolution function with .
Standard_EXPORT void Init(const Adaptor3d_Curve& C,const Standard_Real Tol) ; //! Initializes the resolution function with .
Standard_EXPORT void Init(const Adaptor2d_Curve2d& C,const Standard_Real Tol) ; //! Initializes the resolution function with
//! between U1 and U2.
Standard_EXPORT void Init(const Adaptor3d_Curve& C,const Standard_Real U1,const Standard_Real U2) ; //! Initializes the resolution function with
//! between U1 and U2.
Standard_EXPORT void Init(const Adaptor2d_Curve2d& C,const Standard_Real U1,const Standard_Real U2) ; //! Initializes the resolution function with
//! between U1 and U2.
Standard_EXPORT void Init(const Adaptor3d_Curve& C,const Standard_Real U1,const Standard_Real U2,const Standard_Real Tol) ; //! Initializes the resolution function with
//! between U1 and U2.
Standard_EXPORT void Init(const Adaptor2d_Curve2d& C,const Standard_Real U1,const Standard_Real U2,const Standard_Real Tol) ; //! Computes the point at the distance of
//! the curve.
Standard_EXPORT void Perform(const Standard_Real Abscissa,const Standard_Real U0,const Standard_Real Resolution) ; //! Computes the point at the distance of
//! the curve.
Standard_EXPORT void Perform(const Standard_Real Abscissa,const Standard_Real U0,const Standard_Real Ui,const Standard_Real Resolution) ; //! Computes the point at the distance of
//! the curve; performs more appropriate tolerance managment;
//! to use this method in right way it is necessary to call
//! empty consructor. then call method Init with
//! Tolerance = Resolution, then call AdvPermorm.
Standard_EXPORT void AdvPerform(const Standard_Real Abscissa,const Standard_Real U0,const Standard_Real Ui,const Standard_Real Resolution) ; //! True if the computation was successful, False otherwise.
Standard_Boolean IsDone() const; //! Returns the parameter of the solution.
//!
Standard_Real Parameter() const; //! Enforce the solution, used by GCPnts.
//!
void SetParameter(const Standard_Real P) ; protected: private: Standard_Boolean myDone; Standard_Real myL; Standard_Real myParam; Standard_Real myUMin; Standard_Real myUMax; CPnts_MyRootFunction myF; }; #include // other Inline functions and methods (like "C++: function call" methods) #endif