OCC Main Page | ModelingData | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingData
TKGeomBase
Extrema


Extrema_GenExtPS Class Reference

It calculates all the extremum distances
between a point and a surface.
These distances can be minimum or maximum.
.

#include <Extrema_GenExtPS.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT Extrema_GenExtPS ()
Standard_EXPORT Extrema_GenExtPS (const gp_Pnt &P, const Adaptor3d_Surface &S, const Standard_Integer NbU, const Standard_Integer NbV, const Standard_Real TolU, const Standard_Real TolV)
 It calculates all the distances.
The function F(u,v)=distance(P,S(u,v)) has an
extremum when gradient(F)=0. The algorithm searchs
all the zeros inside the definition ranges of the
surface.
NbU and NbV are used to locate the close points
to find the zeros. They must be great enough
such that if there is N extrema, there will
be N extrema between P and the grid.
TolU et TolV are used to determine the conditions
to stop the iterations; at the iteration number n:
(Un - Un-1) < TolU and (Vn - Vn-1) < TolV .
.
Standard_EXPORT Extrema_GenExtPS (const gp_Pnt &P, const Adaptor3d_Surface &S, const Standard_Integer NbU, const Standard_Integer NbV, const Standard_Real Umin, const Standard_Real Usup, const Standard_Real Vmin, const Standard_Real Vsup, const Standard_Real TolU, const Standard_Real TolV)
 It calculates all the distances.
The function F(u,v)=distance(P,S(u,v)) has an
extremum when gradient(F)=0. The algorithm searchs
all the zeros inside the definition ranges of the
surface.
NbU and NbV are used to locate the close points
to find the zeros. They must be great enough
such that if there is N extrema, there will
be N extrema between P and the grid.
TolU et TolV are used to determine the conditions
to stop the iterations; at the iteration number n:
(Un - Un-1) < TolU and (Vn - Vn-1) < TolV .
.
Standard_EXPORT void Initialize (const Adaptor3d_Surface &S, const Standard_Integer NbU, const Standard_Integer NbV, const Standard_Real TolU, const Standard_Real TolV)
Standard_EXPORT void Initialize (const Adaptor3d_Surface &S, const Standard_Integer NbU, const Standard_Integer NbV, const Standard_Real Umin, const Standard_Real Usup, const Standard_Real Vmin, const Standard_Real Vsup, const Standard_Real TolU, const Standard_Real TolV)
Standard_EXPORT void Perform (const gp_Pnt &P)
 the algorithm is done with the point P.
An exception is raised if the fields have not
been initialized.

Standard_EXPORT Standard_Boolean IsDone () const
 Returns True if the distances are found.
.
Standard_EXPORT Standard_Integer NbExt () const
 Returns the number of extremum distances.
.
Standard_EXPORT Standard_Real Value (const Standard_Integer N) const
 Returns the value of the Nth resulting distance.
.
Standard_EXPORT Extrema_POnSurf Point (const Standard_Integer N) const
 Returns the point of the Nth resulting distance.
.

Private Member Functions

Standard_EXPORT Adaptor3d_SurfacePtr Bidon () const

Private Attributes

Standard_Boolean myDone
Standard_Boolean myInit
Standard_Real myumin
Standard_Real myusup
Standard_Real myvmin
Standard_Real myvsup
Standard_Integer myusample
Standard_Integer myvsample
Handle_TColgp_HArray2OfPnt mypoints
Standard_Real mytolu
Standard_Real mytolv
Extrema_FuncExtPS myF
Adaptor3d_SurfacePtr myS


Constructor & Destructor Documentation

Standard_EXPORT Extrema_GenExtPS::Extrema_GenExtPS  ) 
 

Standard_EXPORT Extrema_GenExtPS::Extrema_GenExtPS const gp_Pnt &  P,
const Adaptor3d_Surface S,
const Standard_Integer  NbU,
const Standard_Integer  NbV,
const Standard_Real  TolU,
const Standard_Real  TolV
 

Standard_EXPORT Extrema_GenExtPS::Extrema_GenExtPS const gp_Pnt &  P,
const Adaptor3d_Surface S,
const Standard_Integer  NbU,
const Standard_Integer  NbV,
const Standard_Real  Umin,
const Standard_Real  Usup,
const Standard_Real  Vmin,
const Standard_Real  Vsup,
const Standard_Real  TolU,
const Standard_Real  TolV
 


Member Function Documentation

Standard_EXPORT Adaptor3d_SurfacePtr Extrema_GenExtPS::Bidon  )  const [private]
 

Standard_EXPORT void Extrema_GenExtPS::Initialize const Adaptor3d_Surface S,
const Standard_Integer  NbU,
const Standard_Integer  NbV,
const Standard_Real  Umin,
const Standard_Real  Usup,
const Standard_Real  Vmin,
const Standard_Real  Vsup,
const Standard_Real  TolU,
const Standard_Real  TolV
 

Standard_EXPORT void Extrema_GenExtPS::Initialize const Adaptor3d_Surface S,
const Standard_Integer  NbU,
const Standard_Integer  NbV,
const Standard_Real  TolU,
const Standard_Real  TolV
 

Standard_EXPORT Standard_Boolean Extrema_GenExtPS::IsDone  )  const
 

Standard_EXPORT Standard_Integer Extrema_GenExtPS::NbExt  )  const
 

void Extrema_GenExtPS::operator delete void *  anAddress  )  [inline]
 

void* Extrema_GenExtPS::operator new size_t  size  )  [inline]
 

void* Extrema_GenExtPS::operator new size_t  ,
void *  anAddress
[inline]
 

Standard_EXPORT void Extrema_GenExtPS::Perform const gp_Pnt &  P  ) 
 

Standard_EXPORT Extrema_POnSurf Extrema_GenExtPS::Point const Standard_Integer  N  )  const
 

Standard_EXPORT Standard_Real Extrema_GenExtPS::Value const Standard_Integer  N  )  const
 


Field Documentation

Standard_Boolean Extrema_GenExtPS::myDone [private]
 

Extrema_FuncExtPS Extrema_GenExtPS::myF [private]
 

Standard_Boolean Extrema_GenExtPS::myInit [private]
 

Handle_TColgp_HArray2OfPnt Extrema_GenExtPS::mypoints [private]
 

Adaptor3d_SurfacePtr Extrema_GenExtPS::myS [private]
 

Standard_Real Extrema_GenExtPS::mytolu [private]
 

Standard_Real Extrema_GenExtPS::mytolv [private]
 

Standard_Real Extrema_GenExtPS::myumin [private]
 

Standard_Integer Extrema_GenExtPS::myusample [private]
 

Standard_Real Extrema_GenExtPS::myusup [private]
 

Standard_Real Extrema_GenExtPS::myvmin [private]
 

Standard_Integer Extrema_GenExtPS::myvsample [private]
 

Standard_Real Extrema_GenExtPS::myvsup [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:22:36 2008 for OpenCASCADE by  doxygen 1.4.1