CGAL:如何将两个(共面)多面体面与多个共同边合并?

时间:2014-10-07 08:22:41

标签: cgal

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

merge example diagram

我希望获得与CGAL join_facet相同的结果,除了(我相信)join_facet仅用于加入只有一个共同边缘的方面。如果还有更多,join_facet可能会产生天线,导致多面体上的后续操作失败。

计算小平面是否共面不是问题的一部分,我可以自己处理。

最终目标是合并共面的三角形多面体的所有面。我假设最好的方法是迭代合并多面体的触摸共面面。因此,我也会接受解释,以解释实现预期结果的替代方法。

1 个答案:

答案 0 :(得分:0)

如果您的构面具有边数,则可以调用函数join_loop