uses
Surface from Geom,
ExtPS from Extrema,
+ ExtAlgo from Extrema,
Pnt from gp,
Length from Quantity,
Parameter from Quantity,
Create(P : Pnt from gp;
- Surface : Surface from Geom)
+ Surface : Surface from Geom;
+ Algo : ExtAlgo from Extrema = Extrema_ExtAlgo_Grad)
---Purpose: Create the projection of a point <P> on a surface
-- <Surface>
---Level: Public
Create(P : Pnt from gp;
Surface : Surface from Geom;
- Tolerance : Real from Standard)
+ Tolerance : Real from Standard;
+ Algo : ExtAlgo from Extrema = Extrema_ExtAlgo_Grad)
---Purpose: Create the projection of a point <P> on a surface
-- <Surface>
---Level: Public
Surface : Surface from Geom;
Umin, Usup,
Vmin, Vsup : Parameter from Quantity;
- Tolerance : Real from Standard)
+ Tolerance : Real from Standard;
+ Algo : ExtAlgo from Extrema = Extrema_ExtAlgo_Grad)
returns ProjectPointOnSurf from GeomAPI;
Create(P : Pnt from gp;
Surface : Surface from Geom;
Umin, Usup,
- Vmin, Vsup : Parameter from Quantity)
+ Vmin, Vsup : Parameter from Quantity;
+ Algo : ExtAlgo from Extrema = Extrema_ExtAlgo_Grad)
returns ProjectPointOnSurf from GeomAPI;
Init(me : in out;
P : Pnt from gp;
Surface : Surface from Geom;
- Tolerance : Real from Standard)
+ Tolerance : Real from Standard;
+ Algo : ExtAlgo from Extrema = Extrema_ExtAlgo_Grad)
is static;
Init(me : in out;
P : Pnt from gp;
- Surface : Surface from Geom)
+ Surface : Surface from Geom;
+ Algo : ExtAlgo from Extrema = Extrema_ExtAlgo_Grad)
is static;
Surface : Surface from Geom;
Umin, Usup,
Vmin, Vsup : Parameter from Quantity;
- Tolerance : Real from Standard)
+ Tolerance : Real from Standard;
+ Algo : ExtAlgo from Extrema = Extrema_ExtAlgo_Grad)
---Level: Public
is static;
P : Pnt from gp;
Surface : Surface from Geom;
Umin, Usup,
- Vmin, Vsup : Parameter from Quantity)
+ Vmin, Vsup : Parameter from Quantity;
+ Algo : ExtAlgo from Extrema = Extrema_ExtAlgo_Grad)
is static;
Surface : Surface from Geom;
Umin, Usup,
Vmin, Vsup : Parameter from Quantity;
- Tolerance : Real from Standard)
+ Tolerance : Real from Standard;
+ Algo : ExtAlgo from Extrema = Extrema_ExtAlgo_Grad)
is static;
Init(me : in out;
Surface : Surface from Geom;
Umin, Usup,
- Vmin, Vsup : Parameter from Quantity)
+ Vmin, Vsup : Parameter from Quantity;
+ Algo : ExtAlgo from Extrema = Extrema_ExtAlgo_Grad)
is static;
//purpose :
//=======================================================================
GeomAPI_ProjectPointOnSurf::GeomAPI_ProjectPointOnSurf (const gp_Pnt& P,
- const Handle(Geom_Surface)& Surface)
+ const Handle(Geom_Surface)& Surface,
+ const Extrema_ExtAlgo theProjAlgo)
{
- Init (P, Surface);
+ Init (P, Surface, theProjAlgo);
}
//=======================================================================
//function : GeomAPI_ProjectPointOnSurf
//=======================================================================
GeomAPI_ProjectPointOnSurf::GeomAPI_ProjectPointOnSurf (const gp_Pnt& P,
const Handle(Geom_Surface)& Surface,
- const Standard_Real Tolerance)
+ const Standard_Real Tolerance,
+ const Extrema_ExtAlgo theProjAlgo)
{
- Init (P, Surface, Tolerance);
+ Init (P, Surface, Tolerance, theProjAlgo);
}
//=======================================================================
//function : GeomAPI_ProjectPointOnSurf
const Standard_Real Umin,
const Standard_Real Usup,
const Standard_Real Vmin,
- const Standard_Real Vsup)
+ const Standard_Real Vsup,
+ const Extrema_ExtAlgo theProjAlgo)
{
- Init (P, Surface, Umin, Usup, Vmin, Vsup);
+ Init (P, Surface, Umin, Usup, Vmin, Vsup, theProjAlgo);
}
//=======================================================================
//function : GeomAPI_ProjectPointOnSurf
const Standard_Real Usup,
const Standard_Real Vmin,
const Standard_Real Vsup,
- const Standard_Real Tolerance)
+ const Standard_Real Tolerance,
+ const Extrema_ExtAlgo theProjAlgo)
{
- Init (P, Surface, Umin, Usup, Vmin, Vsup, Tolerance);
+ Init (P, Surface, Umin, Usup, Vmin, Vsup, Tolerance, theProjAlgo);
}
//=======================================================================
//function : Init
//purpose :
//=======================================================================
void GeomAPI_ProjectPointOnSurf::Init (const gp_Pnt& P,
- const Handle(Geom_Surface)& Surface)
+ const Handle(Geom_Surface)& Surface,
+ const Extrema_ExtAlgo theProjAlgo)
{
- Init (P, Surface, Precision::Confusion());
+ Init (P, Surface, Precision::Confusion(), theProjAlgo);
}
//=======================================================================
//function : Init
//=======================================================================
void GeomAPI_ProjectPointOnSurf::Init(const gp_Pnt& P,
const Handle(Geom_Surface)& Surface,
- const Standard_Real Tolerance)
+ const Standard_Real Tolerance,
+ const Extrema_ExtAlgo theProjAlgo)
{
//modified by NIZNHY-PKV Thu Apr 4 10:37:55 2002 f
myGeomAdaptor.Load(Surface, Umin, Usup, Vmin, Vsup);
//
//myExtPS = Extrema_ExtPS();
+ myExtPS.SetAlgo(theProjAlgo);
myExtPS.Initialize(myGeomAdaptor, Umin, Usup, Vmin, Vsup, Tolerance, Tolerance);
myExtPS.Perform(P);
//XXXmyExtPS = Extrema_ExtPS (P, myGeomAdaptor, Tolerance, Tolerance);
const Standard_Real Umin,
const Standard_Real Usup,
const Standard_Real Vmin,
- const Standard_Real Vsup )
+ const Standard_Real Vsup,
+ const Extrema_ExtAlgo theProjAlgo)
{
Standard_Real Tolerance = Precision::PConfusion();
//modified by NIZNHY-PKV Thu Apr 4 10:38:23 2002 f
//myExtPS = Extrema_ExtPS (P, TheSurface, Tol, Tol);
myGeomAdaptor.Load(Surface, Umin,Usup,Vmin,Vsup);
//myExtPS = Extrema_ExtPS();
+ myExtPS.SetAlgo(theProjAlgo);
myExtPS.Initialize(myGeomAdaptor, Umin, Usup, Vmin, Vsup, Tolerance, Tolerance);
myExtPS.Perform(P);
//XXX myExtPS = Extrema_ExtPS (P, myGeomAdaptor, Tol, Tol);
const Standard_Real Usup,
const Standard_Real Vmin,
const Standard_Real Vsup,
- const Standard_Real Tolerance)
+ const Standard_Real Tolerance,
+ const Extrema_ExtAlgo theProjAlgo)
{
//modified by NIZNHY-PKV Thu Apr 4 10:39:10 2002 f
//GeomAdaptor_Surface TheSurface (Surface,Umin,Usup,Vmin,Vsup);
//myExtPS = Extrema_ExtPS (P, TheSurface, Tolerance, Tolerance);
myGeomAdaptor.Load(Surface, Umin,Usup,Vmin,Vsup);
//myExtPS = Extrema_ExtPS();
+ myExtPS.SetAlgo(theProjAlgo);
myExtPS.Initialize(myGeomAdaptor, Umin, Usup, Vmin, Vsup, Tolerance, Tolerance);
myExtPS.Perform(P);
//XXX myExtPS = Extrema_ExtPS (P, myGeomAdaptor, Tolerance, Tolerance);
const Standard_Real Umin,
const Standard_Real Usup,
const Standard_Real Vmin,
- const Standard_Real Vsup )
+ const Standard_Real Vsup,
+ const Extrema_ExtAlgo theProjAlgo)
{
Standard_Real Tolerance = Precision::PConfusion();
//modified by NIZNHY-PKV Thu Apr 4 10:41:50 2002 f
//myExtPS = Extrema_ExtPS();
//modified by NIZNHY-PKV Thu Apr 4 10:42:32 2002 f
//myExtPS.Initialize(TheSurface, Umin, Usup, Vmin, Vsup, Tol, Tol);
+ myExtPS.SetAlgo(theProjAlgo);
myExtPS.Initialize(myGeomAdaptor, Umin, Usup, Vmin, Vsup, Tolerance, Tolerance);
//modified by NIZNHY-PKV Thu Apr 4 10:42:39 2002 t
myIsDone = Standard_False;
const Standard_Real Usup,
const Standard_Real Vmin,
const Standard_Real Vsup,
- const Standard_Real Tolerance)
+ const Standard_Real Tolerance,
+ const Extrema_ExtAlgo theProjAlgo)
{
//modified by NIZNHY-PKV Thu Apr 4 10:43:00 2002 f
//GeomAdaptor_Surface TheSurface (Surface,Umin,Usup,Vmin,Vsup);
//myExtPS = Extrema_ExtPS();
//modified by NIZNHY-PKV Thu Apr 4 10:43:18 2002 f
//myExtPS.Initialize(TheSurface, Umin, Usup, Vmin, Vsup, Tolerance, Tolerance);
+ myExtPS.SetAlgo(theProjAlgo);
myExtPS.Initialize(myGeomAdaptor, Umin, Usup, Vmin, Vsup, Tolerance, Tolerance);
//modified by NIZNHY-PKV Thu Apr 4 10:43:26 2002 t
myIsDone = Standard_False;