// 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 _GeomAPI_ProjectPointOnSurf_HeaderFile #define _GeomAPI_ProjectPointOnSurf_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Extrema_ExtPS_HeaderFile #include #endif #ifndef _GeomAdaptor_Surface_HeaderFile #include #endif #ifndef _Handle_Geom_Surface_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _Quantity_Parameter_HeaderFile #include #endif #ifndef _Quantity_Length_HeaderFile #include #endif class Standard_OutOfRange; class StdFail_NotDone; class gp_Pnt; class Geom_Surface; class Extrema_ExtPS; //! This class implements methods for computing all the orthogonal
//! projections of a point onto a surface.
class GeomAPI_ProjectPointOnSurf { 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 empty object. Use the
//! Init function for further initialization.
Standard_EXPORT GeomAPI_ProjectPointOnSurf(); //! Create the projection of a point

on a surface
//!
Standard_EXPORT GeomAPI_ProjectPointOnSurf(const gp_Pnt& P,const Handle(Geom_Surface)& Surface); //! Create the projection of a point

on a surface
//!
//! Create the projection of a point

on a surface
//! . The solution are computed in the domain
//! [Umin,Usup] [Vmin,Vsup] of the surface.
Standard_EXPORT GeomAPI_ProjectPointOnSurf(const gp_Pnt& P,const Handle(Geom_Surface)& Surface,const Standard_Real Tolerance); Standard_EXPORT GeomAPI_ProjectPointOnSurf(const gp_Pnt& P,const Handle(Geom_Surface)& Surface,const Quantity_Parameter Umin,const Quantity_Parameter Usup,const Quantity_Parameter Vmin,const Quantity_Parameter Vsup,const Standard_Real Tolerance); //! Init the projection of a point

on a surface
//!
Standard_EXPORT GeomAPI_ProjectPointOnSurf(const gp_Pnt& P,const Handle(Geom_Surface)& Surface,const Quantity_Parameter Umin,const Quantity_Parameter Usup,const Quantity_Parameter Vmin,const Quantity_Parameter Vsup); Standard_EXPORT void Init(const gp_Pnt& P,const Handle(Geom_Surface)& Surface,const Standard_Real Tolerance) ; //! Init the projection of a point

on a surface
//! . The solution are computed in the domain
//! [Umin,Usup] [Vmin,Vsup] of the surface.
Standard_EXPORT void Init(const gp_Pnt& P,const Handle(Geom_Surface)& Surface) ; Standard_EXPORT void Init(const gp_Pnt& P,const Handle(Geom_Surface)& Surface,const Quantity_Parameter Umin,const Quantity_Parameter Usup,const Quantity_Parameter Vmin,const Quantity_Parameter Vsup,const Standard_Real Tolerance) ; //! Init the projection for many points on a surface
//! . The solutions will be computed in the domain
//! [Umin,Usup] [Vmin,Vsup] of the surface.
Standard_EXPORT void Init(const gp_Pnt& P,const Handle(Geom_Surface)& Surface,const Quantity_Parameter Umin,const Quantity_Parameter Usup,const Quantity_Parameter Vmin,const Quantity_Parameter Vsup) ; Standard_EXPORT void Init(const Handle(Geom_Surface)& Surface,const Quantity_Parameter Umin,const Quantity_Parameter Usup,const Quantity_Parameter Vmin,const Quantity_Parameter Vsup,const Standard_Real Tolerance) ; Standard_EXPORT void Init(const Handle(Geom_Surface)& Surface,const Quantity_Parameter Umin,const Quantity_Parameter Usup,const Quantity_Parameter Vmin,const Quantity_Parameter Vsup) ; //! Performs the projection of a point on the current surface.
Standard_EXPORT void Perform(const gp_Pnt& P) ; Standard_EXPORT Standard_Boolean IsDone() const; //! Returns the number of computed orthogonal projection points.
//! Note: if projection fails, NbPoints returns 0.
Standard_EXPORT Standard_Integer NbPoints() const; Standard_EXPORT operator Standard_Integer() const; //! Returns the orthogonal projection
//! on the surface. Index is a number of a computed point.
//! Exceptions
//! Standard_OutOfRange if Index is not in the range [ 1,NbPoints ], where
//! NbPoints is the number of solution points.
Standard_EXPORT gp_Pnt Point(const Standard_Integer Index) const; //! Returns the parameters (U,V) on the
//! surface of the orthogonal projection. Index is a number of a
//! computed point.
//! Exceptions
//! Standard_OutOfRange if Index is not in the range [ 1,NbPoints ], where
//! NbPoints is the number of solution points.
Standard_EXPORT void Parameters(const Standard_Integer Index,Quantity_Parameter& U,Quantity_Parameter& V) const; //! Computes the distance between the
//! point and its orthogonal projection on the surface. Index is a number
//! of a computed point.
//! Exceptions
//! Standard_OutOfRange if Index is not in the range [ 1,NbPoints ], where
//! NbPoints is the number of solution points.
Standard_EXPORT Quantity_Length Distance(const Standard_Integer Index) const; //! Returns the nearest orthogonal projection of the point
//! on the surface.
//! Exceptions
//! StdFail_NotDone if projection fails.
Standard_EXPORT gp_Pnt NearestPoint() const; Standard_EXPORT operator gp_Pnt() const; //! Returns the parameters (U,V) on the
//! surface of the nearest computed orthogonal projection of the point.
//! Exceptions
//! StdFail_NotDone if projection fails.
Standard_EXPORT void LowerDistanceParameters(Quantity_Parameter& U,Quantity_Parameter& V) const; //! Computes the distance between the
//! point and its nearest orthogonal projection on the surface.
//! Exceptions
//! StdFail_NotDone if projection fails.
Standard_EXPORT Quantity_Length LowerDistance() const; Standard_EXPORT operator Standard_Real() const; //! return the algorithmic object from Extrema
const Extrema_ExtPS& Extrema() const; protected: private: Standard_EXPORT void Init() ; Standard_Boolean myIsDone; Standard_Integer myIndex; Extrema_ExtPS myExtPS; GeomAdaptor_Surface myGeomAdaptor; }; #include // other Inline functions and methods (like "C++: function call" methods) #endif