File indexing completed on 2026-05-04 08:45:14
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Extrema_EPCOfExtPC_HeaderFile
0018 #define _Extrema_EPCOfExtPC_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <Standard_Integer.hxx>
0024 #include <Extrema_PCFOfEPCOfExtPC.hxx>
0025 class StdFail_NotDone;
0026 class Standard_OutOfRange;
0027 class Standard_TypeMismatch;
0028 class Adaptor3d_Curve;
0029 class Extrema_CurveTool;
0030 class Extrema_POnCurv;
0031 class gp_Pnt;
0032 class gp_Vec;
0033 class Extrema_PCFOfEPCOfExtPC;
0034
0035 class Extrema_EPCOfExtPC
0036 {
0037 public:
0038 DEFINE_STANDARD_ALLOC
0039
0040 Standard_EXPORT Extrema_EPCOfExtPC();
0041
0042
0043
0044
0045
0046
0047
0048
0049
0050
0051
0052 Standard_EXPORT Extrema_EPCOfExtPC(const gp_Pnt& P,
0053 const Adaptor3d_Curve& C,
0054 const Standard_Integer NbU,
0055 const Standard_Real TolU,
0056 const Standard_Real TolF);
0057
0058
0059
0060
0061
0062
0063
0064
0065
0066
0067
0068
0069 Standard_EXPORT Extrema_EPCOfExtPC(const gp_Pnt& P,
0070 const Adaptor3d_Curve& C,
0071 const Standard_Integer NbU,
0072 const Standard_Real Umin,
0073 const Standard_Real Usup,
0074 const Standard_Real TolU,
0075 const Standard_Real TolF);
0076
0077
0078 Standard_EXPORT void Initialize(const Adaptor3d_Curve& C,
0079 const Standard_Integer NbU,
0080 const Standard_Real TolU,
0081 const Standard_Real TolF);
0082
0083
0084 Standard_EXPORT void Initialize(const Adaptor3d_Curve& C,
0085 const Standard_Integer NbU,
0086 const Standard_Real Umin,
0087 const Standard_Real Usup,
0088 const Standard_Real TolU,
0089 const Standard_Real TolF);
0090
0091
0092 Standard_EXPORT void Initialize(const Adaptor3d_Curve& C);
0093
0094
0095 Standard_EXPORT void Initialize(const Standard_Integer NbU,
0096 const Standard_Real Umin,
0097 const Standard_Real Usup,
0098 const Standard_Real TolU,
0099 const Standard_Real TolF);
0100
0101
0102
0103
0104 Standard_EXPORT void Perform(const gp_Pnt& P);
0105
0106
0107 Standard_EXPORT Standard_Boolean IsDone() const;
0108
0109
0110 Standard_EXPORT Standard_Integer NbExt() const;
0111
0112
0113 Standard_EXPORT Standard_Real SquareDistance(const Standard_Integer N) const;
0114
0115
0116
0117 Standard_EXPORT Standard_Boolean IsMin(const Standard_Integer N) const;
0118
0119
0120 Standard_EXPORT const Extrema_POnCurv& Point(const Standard_Integer N) const;
0121
0122 protected:
0123 private:
0124 Standard_Boolean myDone;
0125 Standard_Boolean myInit;
0126 Standard_Integer mynbsample;
0127 Standard_Real myumin;
0128 Standard_Real myusup;
0129 Standard_Real mytolu;
0130 Standard_Real mytolF;
0131 Extrema_PCFOfEPCOfExtPC myF;
0132 };
0133
0134 #endif