File indexing completed on 2026-05-30 08:47:25
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _TopOpeBRepTool_REGUS_HeaderFile
0018 #define _TopOpeBRepTool_REGUS_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <TopTools_DataMapOfShapeListOfShape.hxx>
0024 #include <TopoDS_Shape.hxx>
0025 #include <TopTools_IndexedMapOfShape.hxx>
0026 #include <Standard_Integer.hxx>
0027 #include <TopTools_MapOfShape.hxx>
0028 #include <TopTools_ListOfShape.hxx>
0029 class TopoDS_Face;
0030 class TopoDS_Edge;
0031
0032 class TopOpeBRepTool_REGUS
0033 {
0034 public:
0035 DEFINE_STANDARD_ALLOC
0036
0037 Standard_EXPORT TopOpeBRepTool_REGUS();
0038
0039 Standard_EXPORT void Init(const TopoDS_Shape& S);
0040
0041 Standard_EXPORT const TopoDS_Shape& S() const;
0042
0043 Standard_EXPORT Standard_Boolean MapS();
0044
0045 Standard_EXPORT static Standard_Boolean WireToFace(const TopoDS_Face& Fanc,
0046 const TopTools_ListOfShape& nWs,
0047 TopTools_ListOfShape& nFs);
0048
0049 Standard_EXPORT static Standard_Boolean SplitF(const TopoDS_Face& Fanc,
0050 TopTools_ListOfShape& FSplits);
0051
0052 Standard_EXPORT Standard_Boolean SplitFaces();
0053
0054 Standard_EXPORT Standard_Boolean REGU();
0055
0056 Standard_EXPORT void SetFsplits(TopTools_DataMapOfShapeListOfShape& Fsplits);
0057
0058 Standard_EXPORT void GetFsplits(TopTools_DataMapOfShapeListOfShape& Fsplits) const;
0059
0060 Standard_EXPORT void SetOshNsh(TopTools_DataMapOfShapeListOfShape& OshNsh);
0061
0062 Standard_EXPORT void GetOshNsh(TopTools_DataMapOfShapeListOfShape& OshNsh) const;
0063
0064 Standard_EXPORT Standard_Boolean InitBlock();
0065
0066 Standard_EXPORT Standard_Boolean NextinBlock();
0067
0068 Standard_EXPORT Standard_Boolean NearestF(const TopoDS_Edge& e,
0069 const TopTools_ListOfShape& lof,
0070 TopoDS_Face& ffound) const;
0071
0072 protected:
0073 private:
0074 Standard_Boolean hasnewsplits;
0075 TopTools_DataMapOfShapeListOfShape myFsplits;
0076 TopTools_DataMapOfShapeListOfShape myOshNsh;
0077 TopoDS_Shape myS;
0078 TopTools_DataMapOfShapeListOfShape mymapeFsstatic;
0079 TopTools_DataMapOfShapeListOfShape mymapeFs;
0080 TopTools_IndexedMapOfShape mymapemult;
0081 Standard_Integer mynF;
0082 Standard_Integer myoldnF;
0083 TopoDS_Shape myf;
0084 TopTools_MapOfShape myedstoconnect;
0085 TopTools_ListOfShape mylFinBlock;
0086 };
0087
0088 #endif