enGits / engrid

ENGRID is a mesh generation software with CFD applications in mind. It supports automatic prismatic boundary layer grids for Navier-Stokes simulations and has a Qt based GUI.
Other
143 stars 55 forks source link

Import surface mesh from Gmsh 2.6.1 #37

Open hkroeger opened 11 years ago

hkroeger commented 11 years ago

Hello,

recently I got problems during import of gmsh surface meshes, created with latest version of gmsh. I guess this might be due to changes in the gmsh format.

For my case, the gmsh header contained an additional section between the keywords "$EndMeshFormat" and "$Nodes" with the patch names, which irritated engrid. The current header looked like this: $MeshFormat 2.2 0 8 $EndMeshFormat $PhysicalNames 10 2 1 "rotor_upstream" ... 3 10 "blade" $EndPhysicalNames $Nodes 34428 ... .

To handle this, e.g. the following change around line 134 in gmshreader.cpp might be useful:

    /*
    f >> word;
    if (word != "$Nodes") EG_ERR_RETURN("$Nodes expected");
    */
    while (word != "$Nodes")
    {
        f >> word;
        if (f.status() != QTextStream::Ok) EG_ERR_RETURN("$Nodes expected");
    }

Regards, Hannes