File indexing completed on 2026-09-21 09:16:38
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifndef _BRepMesh_SelectorOfDataStructureOfDelaun_HeaderFile
0015 #define _BRepMesh_SelectorOfDataStructureOfDelaun_HeaderFile
0016
0017 #include <Standard_Transient.hxx>
0018 #include <BRepMesh_DataStructureOfDelaun.hxx>
0019 #include <BRepMesh_Triangle.hxx>
0020 #include <IMeshData_Types.hxx>
0021
0022 class BRepMesh_Vertex;
0023 class BRepMesh_Edge;
0024
0025
0026
0027 class BRepMesh_SelectorOfDataStructureOfDelaun : public Standard_Transient
0028 {
0029 public:
0030
0031 Standard_EXPORT BRepMesh_SelectorOfDataStructureOfDelaun();
0032
0033
0034
0035 Standard_EXPORT BRepMesh_SelectorOfDataStructureOfDelaun(
0036 const occ::handle<BRepMesh_DataStructureOfDelaun>& theMesh);
0037
0038
0039 Standard_EXPORT void Initialize(const occ::handle<BRepMesh_DataStructureOfDelaun>& theMesh);
0040
0041
0042 Standard_EXPORT void NeighboursOf(const BRepMesh_Vertex& theNode);
0043
0044
0045 Standard_EXPORT void NeighboursOfNode(const int theNodeIndex);
0046
0047
0048 Standard_EXPORT void NeighboursOf(const BRepMesh_Edge& theLink);
0049
0050
0051 Standard_EXPORT void NeighboursOfLink(const int theLinkIndex);
0052
0053
0054 Standard_EXPORT void NeighboursOf(const BRepMesh_Triangle& theElement);
0055
0056
0057 Standard_EXPORT void NeighboursOfElement(const int theElementIndex);
0058
0059
0060 Standard_EXPORT void NeighboursByEdgeOf(const BRepMesh_Triangle& theElement);
0061
0062
0063 void NeighboursOf(const BRepMesh_SelectorOfDataStructureOfDelaun& ) {}
0064
0065
0066 void AddNeighbours() {}
0067
0068
0069 const IMeshData::MapOfInteger& Nodes() const { return myNodes; }
0070
0071
0072 const IMeshData::MapOfInteger& Links() const { return myLinks; }
0073
0074
0075 const IMeshData::MapOfInteger& Elements() const { return myElements; }
0076
0077
0078 const IMeshData::MapOfInteger& FrontierLinks() const { return myFrontier; }
0079
0080 DEFINE_STANDARD_RTTIEXT(BRepMesh_SelectorOfDataStructureOfDelaun, Standard_Transient)
0081
0082 private:
0083
0084 void elementsOfLink(const int theIndex);
0085
0086 private:
0087 occ::handle<BRepMesh_DataStructureOfDelaun> myMesh;
0088 IMeshData::MapOfInteger myNodes;
0089 IMeshData::MapOfInteger myLinks;
0090 IMeshData::MapOfInteger myElements;
0091 IMeshData::MapOfInteger myFrontier;
0092 };
0093
0094 #endif