diff --git a/Geo/GModel.cpp b/Geo/GModel.cpp index e988c6d8e415e42797c17b87185ea7be2a64a2f8..c4a7d50a6edf8c60d2a42317cc05286a47910efe 100644 --- a/Geo/GModel.cpp +++ b/Geo/GModel.cpp @@ -540,13 +540,11 @@ int GModel::mesh(int dimension) bool GModel::setAllVolumesPositive() { - std::vector<GEntity*> entities; - getEntities(entities); bool ok = true; - for(std::set<GRegion*,GEntityLessThan>::iterator itReg=regions.begin(); - itReg != regions.end(); ++itReg) { - int nbEl = (*itReg)->getNumMeshElements(); - for (int iEl=0; iEl<nbEl; ++iEl) ok = ok && (*itReg)->getMeshElement(iEl)->setVolumePositive(); + for(riter it = regions.begin(); it != regions.end(); ++it) { + int nbEl = (*it)->getNumMeshElements(); + for (int iEl = 0; iEl < nbEl; ++iEl) + ok = (ok && (*it)->getMeshElement(iEl)->setVolumePositive()); } return ok; } diff --git a/Mesh/Generator.cpp b/Mesh/Generator.cpp index ea1153ff9acb6192fae49c8be62e741531658e6d..fba73a065ac05d54a6c137f3c2c93f43d08cf207 100644 --- a/Mesh/Generator.cpp +++ b/Mesh/Generator.cpp @@ -671,6 +671,8 @@ static void Mesh3D(GModel *m) } } + m->setAllVolumesPositive(); + double t2 = Cpu(); CTX::instance()->meshTimer[2] = t2 - t1; Msg::StatusBar(true, "Done meshing 3D (%g s)", CTX::instance()->meshTimer[2]); @@ -802,7 +804,7 @@ void GenerateMesh(GModel *m, int ask) if(CTX::instance()->mesh.hoOptimize < 0){ ElasticAnalogy(GModel::current(), CTX::instance()->mesh.hoThresholdMin, false); } - else{ + else{ OptHomParameters p; p.nbLayers = CTX::instance()->mesh.hoNLayers; p.BARRIER_MIN = CTX::instance()->mesh.hoThresholdMin;