File indexing completed on 2026-09-15 09:15:55
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _HLRBRep_TheIntPCurvePCurveOfCInter_HeaderFile
0018 #define _HLRBRep_TheIntPCurvePCurveOfCInter_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <HLRBRep_TypeDef.hxx>
0024 #include <IntRes2d_Domain.hxx>
0025 #include <IntRes2d_Intersection.hxx>
0026 #include <Standard_Integer.hxx>
0027 class HLRBRep_CurveTool;
0028 class HLRBRep_TheProjPCurOfCInter;
0029 class HLRBRep_ThePolygon2dOfTheIntPCurvePCurveOfCInter;
0030 class HLRBRep_TheDistBetweenPCurvesOfTheIntPCurvePCurveOfCInter;
0031 class HLRBRep_ExactIntersectionPointOfTheIntPCurvePCurveOfCInter;
0032 class IntRes2d_Domain;
0033
0034 class HLRBRep_TheIntPCurvePCurveOfCInter : public IntRes2d_Intersection
0035 {
0036 public:
0037 DEFINE_STANDARD_ALLOC
0038
0039 Standard_EXPORT HLRBRep_TheIntPCurvePCurveOfCInter();
0040
0041 Standard_EXPORT void Perform(const HLRBRep_CurvePtr& Curve1,
0042 const IntRes2d_Domain& Domain1,
0043 const HLRBRep_CurvePtr& Curve2,
0044 const IntRes2d_Domain& Domain2,
0045 const double TolConf,
0046 const double Tol);
0047
0048 Standard_EXPORT void Perform(const HLRBRep_CurvePtr& Curve1,
0049 const IntRes2d_Domain& Domain1,
0050 const double TolConf,
0051 const double Tol);
0052
0053
0054 Standard_EXPORT void SetMinNbSamples(const int theMinNbSamples);
0055 Standard_EXPORT int GetMinNbSamples() const;
0056
0057 protected:
0058 Standard_EXPORT void Perform(const HLRBRep_CurvePtr& Curve1,
0059 const IntRes2d_Domain& Domain1,
0060 const HLRBRep_CurvePtr& Curve2,
0061 const IntRes2d_Domain& Domain2,
0062 const double TolConf,
0063 const double Tol,
0064 const int NbIter,
0065 const double DeltaU,
0066 const double DeltaV);
0067
0068 Standard_EXPORT void Perform(const HLRBRep_CurvePtr& Curve1,
0069 const IntRes2d_Domain& Domain1,
0070 const double TolConf,
0071 const double Tol,
0072 const int NbIter,
0073 const double DeltaU,
0074 const double DeltaV);
0075
0076 private:
0077
0078
0079
0080
0081
0082 Standard_EXPORT bool findIntersect(
0083 const HLRBRep_CurvePtr& Curve1,
0084 const IntRes2d_Domain& Domain1,
0085 const HLRBRep_CurvePtr& Curve2,
0086 const IntRes2d_Domain& Domain2,
0087 const double TolConf,
0088 const double Tol,
0089 const int NbIter,
0090 const double DeltaU,
0091 const double DeltaV,
0092 const HLRBRep_ThePolygon2dOfTheIntPCurvePCurveOfCInter& thePoly1,
0093 const HLRBRep_ThePolygon2dOfTheIntPCurvePCurveOfCInter& thePoly2,
0094 const bool isFullRepresentation);
0095
0096 IntRes2d_Domain DomainOnCurve1;
0097 IntRes2d_Domain DomainOnCurve2;
0098
0099
0100 int myMinPntNb;
0101 };
0102
0103 #endif