-
Notifications
You must be signed in to change notification settings - Fork 173
Open
Description
Currently, SurfaceMesh does not encode boundary loops, as indicated by this warning:
The reason is that, in general, boundary loops in a nonmanifold complex do not necessarily define a collection of disjoint loops. See the example below, for instance, where either (i) "outer" halfedges would have to be assigned to more than one boundary loop or (ii) a subset of possible loops would have to be chosen arbitrarily.
Still, for boundary loops of a SurfaceMesh that are well-defined, this approach feels like a bit of a cop-out. A reasonable policy might be:
- If a collection of boundary edges makes an unambiguous loop, add it to the set of boundary loops.
- Otherwise, retain the current behavior: these edges are marked as boundary edges, but do not belong to any boundary loop.
This policy is indeed harder to understand than "there are no boundary loops on SurfaceMesh." But maybe still strikes a good balance between simplicity and utility.
Metadata
Metadata
Assignees
Labels
No labels