It’d be interesting to make a list of possible scenarios where moving the vertices would solve the problems, although different strategies probably would be needed for different cases. A few obvious cases which I come to think of , but there must be more;
- Planar surfaces - Within a certain tolerance, vertices could be moved to the split-line and cut right through with a vertice copy on each side of the cut (moving closer to avoid micro faces).
- Curved surfaces - Same as above. At least within a certain curvature (angle between face normals). Sharper curvatures would require “lifting” the mesh if vertices are moved.
- Sharp edges - Within a certain tolerance the same strategy as in #1 could be used (?)
Near holes perhaps combinations of the above would apply? I probably overlook trickier cases. If the mesh is bad, with overlaps etc, it’s probably messier than when solving it at the coffee table like I try to do right now…
In any case, MeshSplit is one of the “critical” functions, really.