diff --git a/Geo/GModel.cpp b/Geo/GModel.cpp index 820c2475d88069a745025e1f471c1de2f812f401..b22b3ac6e3dad5894a9606dc184f7363e463301f 100644 --- a/Geo/GModel.cpp +++ b/Geo/GModel.cpp @@ -195,6 +195,26 @@ bool GModel::empty() const return vertices.empty() && edges.empty() && faces.empty() && regions.empty(); } +std::vector<GRegion*> GModel::bindingsGetRegions() +{ + return std::vector<GRegion*> (regions.begin(), regions.end()); +} + +std::vector<GFace*> GModel::bindingsGetFaces() +{ + return std::vector<GFace*> (faces.begin(), faces.end()); +} + +std::vector<GEdge*> GModel::bindingsGetEdges() +{ + return std::vector<GEdge*> (edges.begin(), edges.end()); +} + +std::vector<GVertex*> GModel::bindingsGetVertices() +{ + return std::vector<GVertex*> (vertices.begin(), vertices.end()); +} + GRegion *GModel::getRegionByTag(int n) const { GEntity tmp((GModel*)this, n); diff --git a/Geo/GModel.h b/Geo/GModel.h index 177b92658978b0822c385125569bac01b6547207..7880a2b6331bc9d8acd631d279dbf65ee21dde76 100644 --- a/Geo/GModel.h +++ b/Geo/GModel.h @@ -204,6 +204,12 @@ class GModel GFace *getFaceByTag(int n) const; GEdge *getEdgeByTag(int n) const; GVertex *getVertexByTag(int n) const; + + // for python, temporary solution while iterator are not binded + std::vector<GRegion*> bindingsGetRegions(); + std::vector<GFace*> bindingsGetFaces(); + std::vector<GEdge*> bindingsGetEdges(); + std::vector<GVertex*> bindingsGetVertices(); // add/remove an entity in the model void add(GRegion *r) { regions.insert(r); }