0022627: Change OCCT memory management defaults
[occt.git] / src / BRepExtrema / BRepExtrema_ExtPC.hxx
CommitLineData
92d1589b
A
1// This file is generated by WOK (CPPExt).
2// Please do not edit this file; modify original file instead.
3// The copyright and license terms as defined for the original file apply to
4// this header file considered to be the "object code" form of the original source.
5
6#ifndef _BRepExtrema_ExtPC_HeaderFile
7#define _BRepExtrema_ExtPC_HeaderFile
8
9#ifndef _Standard_HeaderFile
10#include <Standard.hxx>
11#endif
1c35b92f 12#ifndef _Standard_DefineAlloc_HeaderFile
13#include <Standard_DefineAlloc.hxx>
14#endif
92d1589b
A
15#ifndef _Standard_Macro_HeaderFile
16#include <Standard_Macro.hxx>
17#endif
18
19#ifndef _Extrema_ExtPC_HeaderFile
20#include <Extrema_ExtPC.hxx>
21#endif
22#ifndef _Handle_BRepAdaptor_HCurve_HeaderFile
23#include <Handle_BRepAdaptor_HCurve.hxx>
24#endif
25#ifndef _Standard_Boolean_HeaderFile
26#include <Standard_Boolean.hxx>
27#endif
28#ifndef _Standard_Integer_HeaderFile
29#include <Standard_Integer.hxx>
30#endif
31#ifndef _Standard_Real_HeaderFile
32#include <Standard_Real.hxx>
33#endif
34class BRepAdaptor_HCurve;
35class TopoDS_Vertex;
36class TopoDS_Edge;
37class gp_Pnt;
38
39
40class BRepExtrema_ExtPC
41{
42 public:
43
1c35b92f 44 DEFINE_STANDARD_ALLOC
92d1589b
A
45
46 Standard_EXPORT BRepExtrema_ExtPC()
47 {
48 }
49 //! It calculates all the distances. <br>
50 Standard_EXPORT BRepExtrema_ExtPC(const TopoDS_Vertex& V,const TopoDS_Edge& E);
51
52 Standard_EXPORT void Initialize(const TopoDS_Edge& E);
53 //! An exception is raised if the fields have not been initialized. <br>
54 Standard_EXPORT void Perform(const TopoDS_Vertex& V);
55 //! True if the distances are found. <br>
56 Standard_EXPORT Standard_Boolean IsDone() const
57 {
58 return myExtPC.IsDone();
59 }
60 //! Returns the number of extremum distances. <br>
61 Standard_EXPORT Standard_Integer NbExt() const
62 {
63 return myExtPC.NbExt();
64 }
65 //! Returns True if the <N>th extremum distance is a minimum. <br>
66 Standard_EXPORT Standard_Boolean IsMin(const Standard_Integer N) const
67 {
68 return myExtPC.IsMin(N);
69 }
70 //! Returns the value of the <N>th extremum square distance. <br>
71 Standard_EXPORT Standard_Real SquareDistance(const Standard_Integer N) const
72 {
73 return myExtPC.SquareDistance(N);
74 }
75 //! Returns the parameter on the edge of the <N>th extremum distance. <br>
76 Standard_EXPORT Standard_Real Parameter(const Standard_Integer N) const
77 {
78 return myExtPC.Point(N).Parameter();
79 }
80 //! Returns the Point of the <N>th extremum distance. <br>
81 Standard_EXPORT gp_Pnt Point(const Standard_Integer N) const
82 {
83 return myExtPC.Point(N).Value();
84 }
85 //! if the curve is a trimmed curve, <br>
86 //! dist1 is a square distance between <P> and the point <br>
87 //! of parameter FirstParameter <pnt1> and <br>
88 //! dist2 is a square distance between <P> and the point <br>
89 //! of parameter LastParameter <pnt2>. <br>
90 Standard_EXPORT void TrimmedSquareDistances(Standard_Real& dist1,Standard_Real& dist2,gp_Pnt& pnt1,gp_Pnt& pnt2) const
91 {
92 myExtPC.TrimmedSquareDistances(dist1,dist2,pnt1,pnt2);
93 }
94
95 private:
96
97 Extrema_ExtPC myExtPC;
98 Handle_BRepAdaptor_HCurve myHC;
99};
100
101#endif