我正在使用CGAL,我有一个多边形,我创建了一些顶点。
现在我得到了一个片段,用:
Segment_2 segment = polygon.edge(i)其中i是从0到polygon.size()的索引。
如何将Segment_2转换为Edge?就像有一个t.segment(Edge e)从一个Edge获取一个Segment_2一样,我想要一些相反的东西(Segment_2到Edge)。
现在我完全确定这个段属于Triangulation_2上的一个边缘,我怎样才能得到它?大概是triangulation.edge(Segment_2)吧。
请帮帮忙。
发布于 2013-08-05 15:41:46
如果您保留了与段的两个点对应的两个顶点句柄,则可以使用以下函数:
bool
CGAL::Triangulation_2< Traits, Tds >::
is_edge(Vertex_handle va,
Vertex_handle vb,
Face_handle & fr,
int & i
)假设v1和v2是顶点句柄,并且t您的三角剖分对象:
Face_handle fh;
int i;
if(t.is_edge(v1, v2, fh, i)) {
Edge my_edge = Edge(fh, i);
// ... use your Edge
}https://stackoverflow.com/questions/18000979
复制相似问题