File indexing completed on 2025-01-18 10:04:13
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _LocOpe_Gluer_HeaderFile
0018 #define _LocOpe_Gluer_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022
0023 #include <TopoDS_Shape.hxx>
0024 #include <TopAbs_Orientation.hxx>
0025 #include <LocOpe_Operation.hxx>
0026 #include <TopTools_IndexedDataMapOfShapeShape.hxx>
0027 #include <TopTools_DataMapOfShapeShape.hxx>
0028 #include <TopTools_DataMapOfShapeListOfShape.hxx>
0029 #include <TopTools_ListOfShape.hxx>
0030 class TopoDS_Face;
0031 class TopoDS_Edge;
0032
0033
0034
0035 class LocOpe_Gluer
0036 {
0037 public:
0038
0039 DEFINE_STANDARD_ALLOC
0040
0041
0042 LocOpe_Gluer();
0043
0044 LocOpe_Gluer(const TopoDS_Shape& Sbase, const TopoDS_Shape& Snew);
0045
0046 Standard_EXPORT void Init (const TopoDS_Shape& Sbase, const TopoDS_Shape& Snew);
0047
0048 Standard_EXPORT void Bind (const TopoDS_Face& Fnew, const TopoDS_Face& Fbase);
0049
0050 Standard_EXPORT void Bind (const TopoDS_Edge& Enew, const TopoDS_Edge& Ebase);
0051
0052 LocOpe_Operation OpeType() const;
0053
0054 Standard_EXPORT void Perform();
0055
0056 Standard_Boolean IsDone() const;
0057
0058 const TopoDS_Shape& ResultingShape() const;
0059
0060 Standard_EXPORT const TopTools_ListOfShape& DescendantFaces (const TopoDS_Face& F) const;
0061
0062 const TopoDS_Shape& BasisShape() const;
0063
0064 const TopoDS_Shape& GluedShape() const;
0065
0066 const TopTools_ListOfShape& Edges() const;
0067
0068 const TopTools_ListOfShape& TgtEdges() const;
0069
0070
0071
0072
0073 protected:
0074
0075
0076
0077
0078
0079 private:
0080
0081
0082 Standard_EXPORT void AddEdges();
0083
0084
0085 Standard_Boolean myDone;
0086 TopoDS_Shape mySb;
0087 TopoDS_Shape mySn;
0088 TopoDS_Shape myRes;
0089 TopAbs_Orientation myOri;
0090 LocOpe_Operation myOpe;
0091 TopTools_IndexedDataMapOfShapeShape myMapEF;
0092 TopTools_DataMapOfShapeShape myMapEE;
0093 TopTools_DataMapOfShapeListOfShape myDescF;
0094 TopTools_ListOfShape myEdges;
0095 TopTools_ListOfShape myTgtEdges;
0096
0097
0098 };
0099
0100
0101 #include <LocOpe_Gluer.lxx>
0102
0103
0104
0105
0106
0107 #endif