From 1cc4879b916850b885785344de05f0fc16b78c2c Mon Sep 17 00:00:00 2001 From: Christophe Geuzaine <cgeuzaine@ulg.ac.be> Date: Sun, 28 Aug 2016 14:31:45 +0000 Subject: [PATCH] simple mesh read example --- utils/api_demos/CMakeLists.txt | 3 +++ utils/api_demos/mainReadMesh.cpp | 31 +++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 utils/api_demos/mainReadMesh.cpp diff --git a/utils/api_demos/CMakeLists.txt b/utils/api_demos/CMakeLists.txt index 021bf4c475..eab5b73d8b 100644 --- a/utils/api_demos/CMakeLists.txt +++ b/utils/api_demos/CMakeLists.txt @@ -53,6 +53,9 @@ target_link_libraries(mainPost shared) add_executable(mainSimple mainSimple.cpp) target_link_libraries(mainSimple shared) +add_executable(mainReadMesh mainReadMesh.cpp) +target_link_libraries(mainReadMesh shared) + add_executable(mainGeoFactory mainGeoFactory.cpp) target_link_libraries(mainGeoFactory shared) diff --git a/utils/api_demos/mainReadMesh.cpp b/utils/api_demos/mainReadMesh.cpp new file mode 100644 index 0000000000..d7c477a2a3 --- /dev/null +++ b/utils/api_demos/mainReadMesh.cpp @@ -0,0 +1,31 @@ +#include <stdio.h> +#include "Gmsh.h" +#include "GModel.h" +#include "MTetrahedron.h" +#include "MTriangle.h" + +int main(int argc, char **argv) +{ + GmshInitialize(argc, argv); + GModel *m = new GModel(); + m->readMSH("../problem.msh"); + for(GModel::riter it = m->firstRegion(); it != m->lastRegion(); ++it){ + GRegion *r = *it; + for(unsigned int i = 0; i < r->tetrahedra.size(); i++) + printf(" tet %d: vertices %d %d %d %d\n", r->tetrahedra[i]->getNum(), + r->tetrahedra[i]->getVertex(0)->getNum(), + r->tetrahedra[i]->getVertex(1)->getNum(), + r->tetrahedra[i]->getVertex(2)->getNum(), + r->tetrahedra[i]->getVertex(3)->getNum()); + } + for(GModel::fiter it = m->firstFace(); it != m->lastFace(); ++it){ + GFace *f = *it; + for(unsigned int i = 0; i < f->triangles.size(); i++) + printf(" tri %d: vertices %d %d %d\n", f->triangles[i]->getNum(), + f->triangles[i]->getVertex(0)->getNum(), + f->triangles[i]->getVertex(1)->getNum(), + f->triangles[i]->getVertex(2)->getNum()); + } + delete m; + GmshFinalize(); +} -- GitLab