Example mesh (connectivity only):
f 1 5 2
f 1 4 5
f 3 2 4
f 4 2 5
If I flip 1-5, then the mesh would be non-manifold (2-4 would be incident to
4 triangles). Polyhedron_3::flip_edge() would be happy to do it for me.
Polyhedron_3::is_valid() would return that everything is fine. Only when I
save and load the mesh again, it would find the problem.
for some reason your emails are going directly into my spam folder.
About the edge flip. If the edge you want to flip creates a new edge
between v0 and v1 you will create a non-manifold mesh if there is
already an edge between v0 and v1, which you can check by looking at
edge incident to v0 and check if one of the vertices is v1.
Sure, I was just wondering how come it's not a precondition assertion (or
maybe a warning). I was under the impression that some invariants are kept,
such as mesh validity (manifoldness). But I guess this one isn't, and I can
probably guess why. Perhaps this could be a note for people to watch for
this pitfall (everything is fine, you save the mesh, you load the mesh, and