Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions
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

DEFINE_STANDARD_ALLOC 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, const Extrema_ExtFlag F=Extrema_ExtFlag_MINMAX, const Extrema_ExtAlgo A=Extrema_ExtAlgo_Grad)
 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 .

 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, const Extrema_ExtFlag F=Extrema_ExtFlag_MINMAX, const Extrema_ExtAlgo A=Extrema_ExtAlgo_Grad)
 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 .

void Initialize (const Adaptor3d_Surface &S, const Standard_Integer NbU, const Standard_Integer NbV, const Standard_Real TolU, const Standard_Real TolV)
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)
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.

void SetFlag (const Extrema_ExtFlag F)
void SetAlgo (const Extrema_ExtAlgo A)
Standard_Boolean IsDone () const
 Returns True if the distances are found.

Standard_Integer NbExt () const
 Returns the number of extremum distances.

Standard_Real SquareDistance (const Standard_Integer N) const
 Returns the value of the Nth resulting square distance.

Extrema_POnSurf Point (const Standard_Integer N) const
 Returns the point of the Nth resulting distance.


Constructor & Destructor Documentation


Member Function Documentation


The documentation for this class was generated from the following file: