diff --git a/Geo/gmshLevelset.cpp b/Geo/gmshLevelset.cpp index 78beae10b627e599f83082f162de35469a63c8d9..05926f882a6e2d6c1d51aa2b5725dee869526c75 100644 --- a/Geo/gmshLevelset.cpp +++ b/Geo/gmshLevelset.cpp @@ -979,14 +979,16 @@ double gLevelsetDistMesh::operator()(double x, double y, double z) const Msg::Error("Cannot compute a distance to an entity of dimension %d\n", (*it)->getDim()); } - if(fabs(distance) == fabs(minDistance)){ - closestElements.push_back(*it); - } - if(fabs(distance) < fabs(minDistance)){ - closestPoint = closePt; - minDistance = distance; - closestElements.clear(); - closestElements.push_back(*it); + if ((*it)->getDim() == 2) { + if(fabs(distance) == fabs(minDistance)){ + closestElements.push_back(*it); + } + if(fabs(distance) < fabs(minDistance)){ + closestPoint = closePt; + minDistance = distance; + closestElements.clear(); + closestElements.push_back(*it); + } } } if(closestElements.size() > 1){