对于CGAL,使用任何内核,但最好使用Epeck,我如何安全地合并Polyhedron_3的两个共面(任意程度)?两个面都在同一个Polyhedron_3曲面上,并且已经共享了一个或多个边。所期望的结果是,共同的边缘全部被删除,这两个方面成为一个单一的方面,没有天线或未连接的顶点在操作后留下。例如,我希望合并图中显示的面F1和F2,并删除HE1、HE2和HE3表示的边。

我希望实现与CGAL的join_facet相同的结果,除了(我相信) join_facet只对连接只有单一公共边的方面有用。如果有更多的,join_facet可能产生天线,这将导致后续的操作对多面体失败。
计算这些面是否共面不是问题的一部分,我可以自己处理。
最终的目的是合并三角形多面体的所有面,这些面是共面的。我假设最好的方法是迭代合并接触多面体的共面。因此,我亦会接受解释其他方法以达致预期效果的答案。
发布于 2014-10-07 08:53:56
如果你的面片有边数,你可以调用函数join_loop。
https://stackoverflow.com/questions/26231611
复制相似问题