File indexing completed on 2026-06-01 08:33:43
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _TopOpeBRep_DSFiller_HeaderFile
0018 #define _TopOpeBRep_DSFiller_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <TopOpeBRep_ShapeIntersector.hxx>
0025 #include <TopOpeBRep_ShapeIntersector2d.hxx>
0026 #include <TopOpeBRep_FacesFiller.hxx>
0027 #include <TopOpeBRep_EdgesFiller.hxx>
0028 #include <TopOpeBRep_FaceEdgeFiller.hxx>
0029 #include <TopOpeBRepTool_PShapeClassifier.hxx>
0030 class TopoDS_Shape;
0031 class TopOpeBRepDS_HDataStructure;
0032 class TopoDS_Face;
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045 class TopOpeBRep_DSFiller
0046 {
0047 public:
0048 DEFINE_STANDARD_ALLOC
0049
0050 Standard_EXPORT TopOpeBRep_DSFiller();
0051
0052 Standard_EXPORT ~TopOpeBRep_DSFiller();
0053
0054
0055
0056 Standard_EXPORT TopOpeBRepTool_PShapeClassifier PShapeClassifier() const;
0057
0058
0059
0060
0061
0062 Standard_EXPORT void Insert(const TopoDS_Shape& S1,
0063 const TopoDS_Shape& S2,
0064 const Handle(TopOpeBRepDS_HDataStructure)& HDS,
0065 const Standard_Boolean orientFORWARD = Standard_True);
0066
0067
0068
0069
0070
0071 Standard_EXPORT void InsertIntersection(const TopoDS_Shape& S1,
0072 const TopoDS_Shape& S2,
0073 const Handle(TopOpeBRepDS_HDataStructure)& HDS,
0074 const Standard_Boolean orientFORWARD = Standard_True);
0075
0076 Standard_EXPORT void Complete(const Handle(TopOpeBRepDS_HDataStructure)& HDS);
0077
0078
0079
0080 Standard_EXPORT void Insert2d(const TopoDS_Shape& S1,
0081 const TopoDS_Shape& S2,
0082 const Handle(TopOpeBRepDS_HDataStructure)& HDS);
0083
0084
0085
0086
0087 Standard_EXPORT void InsertIntersection2d(const TopoDS_Shape& S1,
0088 const TopoDS_Shape& S2,
0089 const Handle(TopOpeBRepDS_HDataStructure)& HDS);
0090
0091 Standard_EXPORT Standard_Boolean IsMadeOf1d(const TopoDS_Shape& S) const;
0092
0093 Standard_EXPORT Standard_Boolean IsContext1d(const TopoDS_Shape& S) const;
0094
0095
0096
0097
0098
0099
0100
0101
0102
0103
0104 Standard_EXPORT void Insert1d(const TopoDS_Shape& S1,
0105 const TopoDS_Shape& S2,
0106 const TopoDS_Face& F1,
0107 const TopoDS_Face& F2,
0108 const Handle(TopOpeBRepDS_HDataStructure)& HDS,
0109 const Standard_Boolean orientFORWARD = Standard_False);
0110
0111 Standard_EXPORT TopOpeBRep_ShapeIntersector& ChangeShapeIntersector();
0112
0113 Standard_EXPORT TopOpeBRep_ShapeIntersector2d& ChangeShapeIntersector2d();
0114
0115 Standard_EXPORT TopOpeBRep_FacesFiller& ChangeFacesFiller();
0116
0117 Standard_EXPORT TopOpeBRep_EdgesFiller& ChangeEdgesFiller();
0118
0119 Standard_EXPORT TopOpeBRep_FaceEdgeFiller& ChangeFaceEdgeFiller();
0120
0121 Standard_EXPORT void GapFiller(const Handle(TopOpeBRepDS_HDataStructure)& HDS) const;
0122
0123
0124
0125
0126
0127
0128 Standard_EXPORT void CompleteDS(const Handle(TopOpeBRepDS_HDataStructure)& HDS) const;
0129
0130 Standard_EXPORT void Filter(const Handle(TopOpeBRepDS_HDataStructure)& HDS) const;
0131
0132 Standard_EXPORT void Reducer(const Handle(TopOpeBRepDS_HDataStructure)& HDS) const;
0133
0134 Standard_EXPORT void RemoveUnsharedGeometry(const Handle(TopOpeBRepDS_HDataStructure)& HDS);
0135
0136 Standard_EXPORT void Checker(const Handle(TopOpeBRepDS_HDataStructure)& HDS) const;
0137
0138
0139
0140
0141
0142
0143
0144
0145 Standard_EXPORT void CompleteDS2d(const Handle(TopOpeBRepDS_HDataStructure)& HDS) const;
0146
0147 protected:
0148 private:
0149 Standard_EXPORT Standard_Boolean CheckInsert(const TopoDS_Shape& S1,
0150 const TopoDS_Shape& S2) const;
0151
0152 Standard_EXPORT Standard_Boolean
0153 ClearShapeSameDomain(const TopoDS_Shape& S1,
0154 const TopoDS_Shape& S2,
0155 const Handle(TopOpeBRepDS_HDataStructure)& HDS);
0156
0157 TopOpeBRep_ShapeIntersector myShapeIntersector;
0158 TopOpeBRep_ShapeIntersector2d myShapeIntersector2d;
0159 TopOpeBRep_FacesFiller myFacesFiller;
0160 TopOpeBRep_EdgesFiller myEdgesFiller;
0161 TopOpeBRep_FaceEdgeFiller myFaceEdgeFiller;
0162 TopOpeBRepTool_PShapeClassifier myPShapeClassifier;
0163 };
0164
0165 #endif