File indexing completed on 2025-01-18 10:03:28
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Extrema_ExtElC2d_HeaderFile
0018 #define _Extrema_ExtElC2d_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <Standard_Integer.hxx>
0024 #include <Extrema_POnCurv2d.hxx>
0025
0026 class gp_Lin2d;
0027 class gp_Circ2d;
0028 class gp_Elips2d;
0029 class gp_Hypr2d;
0030 class gp_Parab2d;
0031
0032
0033
0034
0035
0036 class Extrema_ExtElC2d
0037 {
0038 public:
0039
0040 DEFINE_STANDARD_ALLOC
0041
0042
0043 Standard_EXPORT Extrema_ExtElC2d();
0044
0045
0046
0047
0048 Standard_EXPORT Extrema_ExtElC2d(const gp_Lin2d& C1, const gp_Lin2d& C2, const Standard_Real AngTol);
0049
0050
0051
0052 Standard_EXPORT Extrema_ExtElC2d(const gp_Lin2d& C1, const gp_Circ2d& C2, const Standard_Real Tol);
0053
0054
0055
0056 Standard_EXPORT Extrema_ExtElC2d(const gp_Lin2d& C1, const gp_Elips2d& C2);
0057
0058
0059
0060 Standard_EXPORT Extrema_ExtElC2d(const gp_Lin2d& C1, const gp_Hypr2d& C2);
0061
0062
0063
0064 Standard_EXPORT Extrema_ExtElC2d(const gp_Lin2d& C1, const gp_Parab2d& C2);
0065
0066
0067
0068 Standard_EXPORT Extrema_ExtElC2d(const gp_Circ2d& C1, const gp_Circ2d& C2);
0069
0070
0071
0072 Standard_EXPORT Extrema_ExtElC2d(const gp_Circ2d& C1, const gp_Elips2d& C2);
0073
0074
0075
0076 Standard_EXPORT Extrema_ExtElC2d(const gp_Circ2d& C1, const gp_Hypr2d& C2);
0077
0078
0079
0080 Standard_EXPORT Extrema_ExtElC2d(const gp_Circ2d& C1, const gp_Parab2d& C2);
0081
0082
0083 Standard_EXPORT Standard_Boolean IsDone() const;
0084
0085
0086 Standard_EXPORT Standard_Boolean IsParallel() const;
0087
0088
0089 Standard_EXPORT Standard_Integer NbExt() const;
0090
0091
0092 Standard_EXPORT Standard_Real SquareDistance (const Standard_Integer N = 1) const;
0093
0094
0095
0096 Standard_EXPORT void Points (const Standard_Integer N, Extrema_POnCurv2d& P1, Extrema_POnCurv2d& P2) const;
0097
0098
0099
0100
0101 protected:
0102
0103
0104
0105
0106
0107 private:
0108
0109
0110
0111 Standard_Boolean myDone;
0112 Standard_Boolean myIsPar;
0113 Standard_Integer myNbExt;
0114 Standard_Real mySqDist[8];
0115 Extrema_POnCurv2d myPoint[8][2];
0116
0117
0118 };
0119
0120
0121
0122
0123
0124
0125
0126 #endif