diff --git a/utils/api_demos/CMakeLists.txt b/utils/api_demos/CMakeLists.txt index 021bf4c47576b940b19ac6d2aa2a2046fcb1caff..eab5b73d8b576786b4954945919c252080741c7f 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 0000000000000000000000000000000000000000..d7c477a2a311951b8992fc5f0dc082814569db06 --- /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(); +}