diff --git a/Mesh/Generator.cpp b/Mesh/Generator.cpp index 963157e2f0cd93f8a5bc444ef9321fd25134ea51..f8fba464184597ee7b58e22821fe676f440f37bc 100644 --- a/Mesh/Generator.cpp +++ b/Mesh/Generator.cpp @@ -437,7 +437,6 @@ static void Mesh2D(GModel *m) // and curve meshes) is global as it depends on a smooth normal // field generated from the surface mesh of the source surfaces if(!Mesh2DWithBoundaryLayers(m)){ - std::set<GFace*> cf, f; for(GModel::fiter it = m->firstFace(); it != m->lastFace(); ++it) if ((*it)->geomType() == GEntity::CompoundSurface) diff --git a/Mesh/HighOrder.cpp b/Mesh/HighOrder.cpp index a11aa2ebe55a009558e4432b995c8f34cab0751f..788dbf0fef12843487d019b2e79c1770c1d7842f 100644 --- a/Mesh/HighOrder.cpp +++ b/Mesh/HighOrder.cpp @@ -899,6 +899,8 @@ static void removeHighOrderVertices(GEntity *e) void SetOrder1(GModel *m) { + Msg::StatusBar(2, true, "Meshing order 1..."); + m->destroyMeshCaches(); // replace all elements with first order elements @@ -923,6 +925,8 @@ void SetOrder1(GModel *m) removeHighOrderVertices(*it); for(GModel::riter it = m->firstRegion(); it != m->lastRegion(); ++it) removeHighOrderVertices(*it); + + Msg::StatusBar(2, true, "Done meshing order 1"); } void checkHighOrderTriangles(const char* cc, GModel *m, diff --git a/Mesh/meshGEdgeExtruded.cpp b/Mesh/meshGEdgeExtruded.cpp index 32273b60e26d3b92ce1c8be06979fd505ffaf538..95a55f7e7ce87f64ea5c62f80b4c6ed0e2608e92 100644 --- a/Mesh/meshGEdgeExtruded.cpp +++ b/Mesh/meshGEdgeExtruded.cpp @@ -67,7 +67,8 @@ int MeshExtrudedCurve(GEdge *ge) Msg::Error("Unknown source curve %d for extrusion", ep->geo.Source); return 0; } - else if(from->meshStatistics.status != GEdge::DONE){ + else if(from->geomType() != GEntity::DiscreteCurve && + from->meshStatistics.status != GEdge::DONE){ // cannot mesh this edge yet: will do it later return 1; } diff --git a/Mesh/meshGFaceExtruded.cpp b/Mesh/meshGFaceExtruded.cpp index 13dbc2dddf59468ec978078df3897acc101e8dc3..54c1c419b97e925637586ad281053166731c4aa0 100644 --- a/Mesh/meshGFaceExtruded.cpp +++ b/Mesh/meshGFaceExtruded.cpp @@ -231,8 +231,10 @@ int MeshExtrudedSurface(GFace *gf, Msg::Error("Unknown source surface %d for extrusion", ep->geo.Source); return 0; } - else if(from->meshStatistics.status != GFace::DONE){ - // cannot mesh this face yet: will do it later + else if(from->geomType() != GEntity::DiscreteSurface && + from->meshStatistics.status != GFace::DONE){ + // cannot mesh the face yet (the source face is not meshed): + // will do it later return 1; } copyMesh(from, gf, pos);