File indexing completed on 2026-05-11 08:47:03
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _BRepAlgo_Image_HeaderFile
0018 #define _BRepAlgo_Image_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <TopTools_ListOfShape.hxx>
0025 #include <TopTools_DataMapOfShapeShape.hxx>
0026 #include <TopTools_DataMapOfShapeListOfShape.hxx>
0027 #include <Standard_Boolean.hxx>
0028 #include <TopAbs_ShapeEnum.hxx>
0029 class TopoDS_Shape;
0030
0031
0032
0033 class BRepAlgo_Image
0034 {
0035 public:
0036 DEFINE_STANDARD_ALLOC
0037
0038 Standard_EXPORT BRepAlgo_Image();
0039
0040 Standard_EXPORT void SetRoot(const TopoDS_Shape& S);
0041
0042
0043 Standard_EXPORT void Bind(const TopoDS_Shape& OldS, const TopoDS_Shape& NewS);
0044
0045
0046 Standard_EXPORT void Bind(const TopoDS_Shape& OldS, const TopTools_ListOfShape& NewS);
0047
0048
0049 Standard_EXPORT void Add(const TopoDS_Shape& OldS, const TopoDS_Shape& NewS);
0050
0051
0052 Standard_EXPORT void Add(const TopoDS_Shape& OldS, const TopTools_ListOfShape& NewS);
0053
0054 Standard_EXPORT void Clear();
0055
0056
0057 Standard_EXPORT void Remove(const TopoDS_Shape& S);
0058
0059
0060 Standard_EXPORT void RemoveRoot(const TopoDS_Shape& Root);
0061
0062
0063
0064
0065 Standard_EXPORT void ReplaceRoot(const TopoDS_Shape& OldRoot, const TopoDS_Shape& NewRoot);
0066
0067 Standard_EXPORT const TopTools_ListOfShape& Roots() const;
0068
0069 Standard_EXPORT Standard_Boolean IsImage(const TopoDS_Shape& S) const;
0070
0071
0072 Standard_EXPORT const TopoDS_Shape& ImageFrom(const TopoDS_Shape& S) const;
0073
0074
0075 Standard_EXPORT const TopoDS_Shape& Root(const TopoDS_Shape& S) const;
0076
0077 Standard_EXPORT Standard_Boolean HasImage(const TopoDS_Shape& S) const;
0078
0079
0080
0081 Standard_EXPORT const TopTools_ListOfShape& Image(const TopoDS_Shape& S) const;
0082
0083
0084
0085 Standard_EXPORT void LastImage(const TopoDS_Shape& S, TopTools_ListOfShape& L) const;
0086
0087
0088 Standard_EXPORT void Compact();
0089
0090
0091
0092
0093 Standard_EXPORT void Filter(const TopoDS_Shape& S, const TopAbs_ShapeEnum ShapeType);
0094
0095 protected:
0096 private:
0097 TopTools_ListOfShape roots;
0098 TopTools_DataMapOfShapeShape up;
0099 TopTools_DataMapOfShapeListOfShape down;
0100 };
0101
0102 #endif