277{
280
281 if (result.empty())
282 return "";
283
284 std::ostringstream err_msg;
286 err_msg << "- At least one non-Tri3 element was found.\n" << std::endl;
288 err_msg << "- At least one triangle without three neighbors was found.\n" << std::endl;
290 err_msg << "- The surface mesh was empty\n" << std::endl;
292 err_msg << "- At least one triangle neighbor without a return neighbor link was found.\n";
294 err_msg << "- At least one triangle neighbor without expected node links was found.\n";
296 err_msg << "- At least one triangle neighbor with an inconsistent orientation was found.\n";
298 err_msg << "- At least one triangle neighbor with inconsistent node and neighbor links was "
299 "found.\n";
301 err_msg << "- At least one input triangle is degenerate, with near-zero area relative to the "
302 "manifold.\n";
304 err_msg << "- Mesh is degenerate, with zero thickness in at least one direction.\n";
305 return err_msg.str();
306}
std::set< SurfaceIntegrity > improve_hull_integrity()