File indexing completed on 2025-01-18 10:03:04
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 #ifndef _BOPAlgo_WireSplitter_HeaderFile
0016 #define _BOPAlgo_WireSplitter_HeaderFile
0017
0018 #include <Standard.hxx>
0019 #include <Standard_DefineAlloc.hxx>
0020 #include <Standard_Handle.hxx>
0021
0022 #include <BOPAlgo_PWireEdgeSet.hxx>
0023 #include <BOPTools_ListOfConnexityBlock.hxx>
0024 #include <BOPAlgo_Algo.hxx>
0025 #include <BOPTools_ConnexityBlock.hxx>
0026 #include <IntTools_Context.hxx>
0027 #include <NCollection_BaseAllocator.hxx>
0028 #include <TopTools_ListOfShape.hxx>
0029 class TopoDS_Wire;
0030 class TopoDS_Face;
0031
0032
0033
0034
0035
0036
0037
0038 class BOPAlgo_WireSplitter : public BOPAlgo_Algo
0039 {
0040 public:
0041
0042 DEFINE_STANDARD_ALLOC
0043
0044
0045 Standard_EXPORT BOPAlgo_WireSplitter();
0046 Standard_EXPORT virtual ~BOPAlgo_WireSplitter();
0047
0048 Standard_EXPORT BOPAlgo_WireSplitter(const Handle(NCollection_BaseAllocator)& theAllocator);
0049
0050 Standard_EXPORT void SetWES (const BOPAlgo_WireEdgeSet& theWES);
0051
0052 Standard_EXPORT BOPAlgo_WireEdgeSet& WES();
0053
0054
0055 Standard_EXPORT void SetContext(const Handle(IntTools_Context)& theContext);
0056
0057
0058 Standard_EXPORT const Handle(IntTools_Context)& Context();
0059
0060 Standard_EXPORT virtual void Perform(const Message_ProgressRange& theRange = Message_ProgressRange()) Standard_OVERRIDE;
0061
0062 static void MakeWire(TopTools_ListOfShape& theLE, TopoDS_Wire& theW);
0063
0064 Standard_EXPORT static void SplitBlock (const TopoDS_Face& theF,
0065 BOPTools_ConnexityBlock& theCB,
0066 const Handle(IntTools_Context)& theContext);
0067
0068 protected:
0069
0070 Standard_EXPORT virtual void CheckData() Standard_OVERRIDE;
0071
0072 Standard_EXPORT void MakeWires(const Message_ProgressRange& theRange);
0073
0074 BOPAlgo_PWireEdgeSet myWES;
0075 BOPTools_ListOfConnexityBlock myLCB;
0076 Handle(IntTools_Context) myContext;
0077
0078 };
0079
0080 #include <BOPAlgo_WireSplitter.lxx>
0081
0082 #endif