File indexing completed on 2026-09-18 09:20:53
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _IMeshData_Model_HeaderFile
0017 #define _IMeshData_Model_HeaderFile
0018
0019 #include <IMeshData_Shape.hxx>
0020 #include <Standard_Type.hxx>
0021 #include <TopoDS_Shape.hxx>
0022 #include <IMeshData_Types.hxx>
0023
0024 class TopoDS_Face;
0025 class TopoDS_Edge;
0026
0027
0028 class IMeshData_Model : public IMeshData_Shape
0029 {
0030 public:
0031
0032 ~IMeshData_Model() override = default;
0033
0034
0035 Standard_EXPORT virtual double GetMaxSize() const = 0;
0036
0037 DEFINE_STANDARD_RTTIEXT(IMeshData_Model, IMeshData_Shape)
0038
0039 public:
0040
0041 Standard_EXPORT virtual int FacesNb() const = 0;
0042
0043
0044 Standard_EXPORT virtual const IMeshData::IFaceHandle& AddFace(const TopoDS_Face& theFace) = 0;
0045
0046
0047 Standard_EXPORT virtual const IMeshData::IFaceHandle& GetFace(const int theIndex) const = 0;
0048
0049 public:
0050
0051 Standard_EXPORT virtual int EdgesNb() const = 0;
0052
0053
0054 Standard_EXPORT virtual const IMeshData::IEdgeHandle& AddEdge(const TopoDS_Edge& theEdge) = 0;
0055
0056
0057 Standard_EXPORT virtual const IMeshData::IEdgeHandle& GetEdge(const int theIndex) const = 0;
0058
0059 protected:
0060
0061
0062 IMeshData_Model(const TopoDS_Shape& theShape)
0063 : IMeshData_Shape(theShape)
0064 {
0065 }
0066 };
0067
0068 #endif