繁体   English   中英

完成部分三角测量的算法(约束三角剖分)

[英]Algorithm for completing a partial triangulation (Constrained Triangulation)

给定平面中的一组点和点的凸包的不完全三角剖分 (仅给出一些边),我正在寻找一种算法来完成三角测量(初始给定边应该保持固定)。 您可以假设可以完成部分三角测量,但如果您也可以建议用于检查的算法,那就太棒了。

更新“你给出了一组点R ^ 2的凸包,它基本上是一个多边形,里面有一些点。我们想要对点集合进行三角测量,这对于它自身是一个简单的问题,但你也是给出一些边缘,你提出的任何三角测量应该使用那些边缘。“

也许这是一个天真的答案,但你不能只使用受限制的delaunay三角测量吗? 将已知边添加为约束。

CGAL有一个很好的实现 工具三角形具有类似的功能,更容易上手,但(可能)灵活性稍差。

我发现“计算几何:简介”一书对该主题有详细的处理,尽管它没有准备好实现伪代码。

最简单的算法是贪婪的算法,它枚举所有可能的边缘,然后逐个添加它们,避免与先前添加的年龄相交。 书中有一个关于如何将运行时间减少到O(n ^ 2 log n)的长篇讨论。

然后有一个O(n log n)算法,它首先用给定的边缘对凸包进行正规化,然后分别对每个单调多边形进行三角测量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM