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 _BOPDS_ShapeInfo_HeaderFile
0016 #define _BOPDS_ShapeInfo_HeaderFile
0017
0018 #include <Standard.hxx>
0019 #include <Standard_DefineAlloc.hxx>
0020 #include <Standard_Handle.hxx>
0021
0022 #include <Bnd_Box.hxx>
0023 #include <NCollection_BaseAllocator.hxx>
0024 #include <Standard_Integer.hxx>
0025 #include <Standard_Boolean.hxx>
0026 #include <TColStd_ListOfInteger.hxx>
0027 #include <TopoDS_Shape.hxx>
0028
0029
0030
0031
0032 class BOPDS_ShapeInfo
0033 {
0034 public:
0035
0036 DEFINE_STANDARD_ALLOC
0037
0038
0039 BOPDS_ShapeInfo();
0040
0041 virtual ~BOPDS_ShapeInfo();
0042
0043
0044
0045 BOPDS_ShapeInfo(const Handle(NCollection_BaseAllocator)& theAllocator);
0046
0047
0048
0049
0050 void SetShape (const TopoDS_Shape& theS);
0051
0052
0053
0054
0055 const TopoDS_Shape& Shape() const;
0056
0057
0058
0059
0060 void SetShapeType (const TopAbs_ShapeEnum theType);
0061
0062
0063
0064
0065 TopAbs_ShapeEnum ShapeType() const;
0066
0067
0068
0069
0070 void SetBox (const Bnd_Box& theBox);
0071
0072
0073
0074
0075 const Bnd_Box& Box() const;
0076
0077
0078
0079
0080 Bnd_Box& ChangeBox();
0081
0082
0083
0084
0085 const TColStd_ListOfInteger& SubShapes() const;
0086
0087
0088
0089
0090 TColStd_ListOfInteger& ChangeSubShapes();
0091
0092
0093
0094
0095
0096 Standard_Boolean HasSubShape (const Standard_Integer theI) const;
0097
0098 Standard_Boolean HasReference() const;
0099
0100
0101
0102
0103 void SetReference (const Standard_Integer theI);
0104
0105
0106
0107
0108 Standard_Integer Reference() const;
0109
0110
0111
0112
0113 Standard_Boolean HasBRep() const;
0114
0115
0116
0117
0118
0119
0120 Standard_Boolean IsInterfering() const;
0121
0122
0123
0124
0125 Standard_Boolean HasFlag() const;
0126
0127
0128
0129
0130
0131 Standard_Boolean HasFlag (Standard_Integer& theFlag) const;
0132
0133
0134
0135
0136 void SetFlag (const Standard_Integer theI);
0137
0138
0139
0140 Standard_Integer Flag() const;
0141
0142 Standard_EXPORT void Dump() const;
0143
0144
0145
0146
0147 protected:
0148
0149
0150
0151 TopoDS_Shape myShape;
0152 TopAbs_ShapeEnum myType;
0153 Bnd_Box myBox;
0154 TColStd_ListOfInteger mySubShapes;
0155 Standard_Integer myReference;
0156 Standard_Integer myFlag;
0157
0158
0159 private:
0160
0161
0162
0163
0164
0165 };
0166
0167
0168 #include <BOPDS_ShapeInfo.lxx>
0169
0170
0171
0172
0173
0174 #endif