File indexing completed on 2026-09-26 09:03:17
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _GeomInt_LineConstructor_HeaderFile
0018 #define _GeomInt_LineConstructor_HeaderFile
0019
0020 #include <GeomAdaptor_Surface.hxx>
0021 #include <NCollection_Sequence.hxx>
0022
0023 class Adaptor3d_TopolTool;
0024 class IntPatch_Line;
0025
0026
0027 class GeomInt_LineConstructor
0028 {
0029 public:
0030 DEFINE_STANDARD_ALLOC
0031
0032
0033 GeomInt_LineConstructor();
0034
0035
0036
0037 void Load(const occ::handle<Adaptor3d_TopolTool>& D1,
0038 const occ::handle<Adaptor3d_TopolTool>& D2,
0039 const occ::handle<GeomAdaptor_Surface>& S1,
0040 const occ::handle<GeomAdaptor_Surface>& S2);
0041
0042
0043 Standard_EXPORT void Perform(const occ::handle<IntPatch_Line>& L);
0044
0045
0046 bool IsDone() const;
0047
0048
0049 int NbParts() const;
0050
0051
0052
0053 void Part(const int I, double& WFirst, double& WLast) const;
0054
0055 protected:
0056 Standard_EXPORT void TreatCircle(const occ::handle<IntPatch_Line>& aLine, const double aTol);
0057
0058 private:
0059 bool done;
0060 NCollection_Sequence<double> seqp;
0061 occ::handle<Adaptor3d_TopolTool> myDom1;
0062 occ::handle<Adaptor3d_TopolTool> myDom2;
0063 occ::handle<GeomAdaptor_Surface> myHS1;
0064 occ::handle<GeomAdaptor_Surface> myHS2;
0065 };
0066
0067 #include <GeomInt_LineConstructor.lxx>
0068
0069 #endif