CGAL: How to merge two (coplanar) polyhedron facets with more than one common edge?

一笑奈何 提交于 2019-12-13 07:35:24

问题


With CGAL, Using any kernal, but preferably the Epeck, how can I safely merge two coplanar facets (of any degree) of a Polyhedron_3? Both facets are on the same Polyhedron_3 surface and already sharing one or more edges. The desired result is that the common edges are all removed, the two facets become a single facet, and no antennae or unconnected vertices remain after the operation. As an example, I would like to merge facets F1 and F2 shown in the diagram below, and have the edges denoted by HE1, HE2 and HE3 removed.

I want to achieve the same result as CGAL's join_facet, except that (I believe) join_facet is only useful for joining facets which only have a single common edge. If there are more, join_facet may create antennae, which causes subsequent operations on the polyhedron to fail.

Calculating whether the facets are coplanar is not part of the question, I can handle this myself.

The ultimate aim is to merge all facets of a triangulated polyhedron which are coplanar. I am assuming the best way to do this is to iteratively merge touching coplanar facets of the polyhedron. I will therefore also accept answers which explain alternative means to achieve the desired result.


回答1:


You can call the function join_loop if your facets have the number of edges.



来源:https://stackoverflow.com/questions/26231611/cgal-how-to-merge-two-coplanar-polyhedron-facets-with-more-than-one-common-ed

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!