【发布时间】:2011-07-12 00:06:17
【问题描述】:
尝试对一组简单的二维多边形进行三角剖分,我想出了这个算法:
- 1) 对于多边形中的每个顶点,计算两个链接边之间的角度
- 2) 通过减小相对于多边形内部的角度对顶点进行排序
- 3) 如果集合中的顶点少于 3 个,我们就完成了
- 4) 取集合中的最后一个顶点,输出由它和它的两个邻域组成的三角形
- 5) 从集合中移除顶点
- 6) 更新两个邻居的角度
- 7) 跳转到 2
我已经对其进行了测试,发现它甚至可以在非常大和复杂的简单二维多边形上工作(它不适用于有孔的多边形或自相交的多边形)。
是否存在会产生退化结果的极端情况?
这个算法是已知的吗?
如果不是,我想确定这个算法是坚如磐石的,但我没有数学背景来证明它。
非常感谢。
【问题讨论】:
标签: algorithm geometry 2d triangulation