Skip to content
Snippets Groups Projects
Commit a38126ab authored by Christophe Geuzaine's avatar Christophe Geuzaine
Browse files

progress bar for 1D and 2D meshing

parent 99ed7186
Branches
Tags
No related merge requests found
......@@ -364,17 +364,20 @@ static void Mesh1D(GModel *m)
for(GModel::eiter it = m->firstEdge(); it != m->lastEdge(); ++it)
(*it)->meshStatistics.status = GEdge::PENDING;
int nIter = 0;
Msg::ResetProgressMeter();
int nIter = 0, nTot = m->getNumEdges();
while(1){
meshGEdge mesher;
int nbPending = 0;
int nPending = 0;
for(GModel::eiter it = m->firstEdge(); it != m->lastEdge(); ++it){
if ((*it)->meshStatistics.status == GEdge::PENDING){
mesher(*it);
nbPending++;
nPending++;
}
if(!nIter) Msg::ProgressMeter(nPending, nTot, "Meshing 1D...");
}
if(!nbPending) break;
if(!nPending) break;
if(nIter++ > 10) break;
}
......@@ -458,24 +461,28 @@ static void Mesh2D(GModel *m)
else
f.insert(*it);
int nIter = 0;
Msg::ResetProgressMeter();
int nIter = 0, nTot = m->getNumFaces();
while(1){
int nbPending = 0;
int nPending = 0;
for(std::set<GFace*>::iterator it = f.begin(); it != f.end(); ++it){
if ((*it)->meshStatistics.status == GFace::PENDING){
meshGFace mesher (true, CTX::instance()->mesh.multiplePasses);
mesher(*it);
nbPending++;
nPending++;
}
if(!nIter) Msg::ProgressMeter(nPending, nTot, "Meshing 2D...");
}
for(std::set<GFace*>::iterator it = cf.begin(); it != cf.end(); ++it){
if ((*it)->meshStatistics.status == GFace::PENDING){
meshGFace mesher (true, CTX::instance()->mesh.multiplePasses);
mesher(*it);
nbPending++;
nPending++;
}
if(!nIter) Msg::ProgressMeter(nPending, nTot, "Meshing 2D...");
}
if(!nbPending) break;
if(!nPending) break;
if(nIter++ > 10) break;
}
}
......@@ -561,7 +568,6 @@ static void Mesh3D(GModel *m)
double t2 = Cpu();
CTX::instance()->meshTimer[2] = t2 - t1;
Msg::StatusBar(2, true, "Done meshing 3D (%g s)", CTX::instance()->meshTimer[2]);
}
void OptimizeMeshNetgen(GModel *m)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment