File indexing completed on 2025-01-18 10:03:10
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifndef _BRepExtrema_ExtCC_HeaderFile
0015 #define _BRepExtrema_ExtCC_HeaderFile
0016
0017 #include <Extrema_ExtCC.hxx>
0018 #include <BRepAdaptor_Curve.hxx>
0019 #include <Standard_DefineAlloc.hxx>
0020
0021 class TopoDS_Edge;
0022 class gp_Pnt;
0023
0024 class BRepExtrema_ExtCC
0025 {
0026 public:
0027
0028 DEFINE_STANDARD_ALLOC
0029
0030 BRepExtrema_ExtCC ()
0031 {
0032 }
0033
0034 Standard_EXPORT BRepExtrema_ExtCC(const TopoDS_Edge& E1,const TopoDS_Edge& E2);
0035
0036 Standard_EXPORT void Initialize(const TopoDS_Edge& E2);
0037
0038 Standard_EXPORT void Perform(const TopoDS_Edge& E1);
0039
0040 Standard_Boolean IsDone() const
0041 {
0042 return myExtCC.IsDone();
0043 }
0044
0045 Standard_Integer NbExt() const
0046 {
0047 return myExtCC.NbExt();
0048 }
0049
0050 Standard_Boolean IsParallel() const
0051 {
0052 return myExtCC.IsParallel();
0053 }
0054
0055 Standard_Real SquareDistance(const Standard_Integer N) const
0056 {
0057 return myExtCC.SquareDistance(N);
0058 }
0059
0060 Standard_EXPORT Standard_Real ParameterOnE1(const Standard_Integer N) const;
0061
0062 Standard_EXPORT gp_Pnt PointOnE1(const Standard_Integer N) const;
0063
0064 Standard_EXPORT Standard_Real ParameterOnE2(const Standard_Integer N) const;
0065
0066 Standard_EXPORT gp_Pnt PointOnE2(const Standard_Integer N) const;
0067
0068
0069
0070
0071 Standard_EXPORT void TrimmedSquareDistances(Standard_Real& dist11,Standard_Real& distP12,Standard_Real& distP21,Standard_Real& distP22,gp_Pnt& P11,gp_Pnt& P12,gp_Pnt& P21,gp_Pnt& P22) const;
0072
0073 private:
0074
0075 Extrema_ExtCC myExtCC;
0076 Handle(BRepAdaptor_Curve) myHC;
0077 };
0078
0079 #endif