使用单调多边形的多边形三角剖分

时间:2012-02-07 02:11:00

标签: c++ algorithm math geometry triangulation

我有一个没有孔的简单多边形,它需要被三角化成凸多边形以用于物理引擎,而且我也可以使用这些凸多边形通过三角形条进行渲染。

This维基百科的文章显示了单调多边形如何用于对多边形进行三角测量。它提供了它如何工作的简短描述,但没有足够的细节供我理解。这种方法看起来非常适合我需要的东西,而它链接的Flash Demo表明该算法可以完美地满足我的需求。

我一直在寻找谷歌寻找关于算法的更好解释,我只能找到进行三角测量的库或源代码。我更愿意学习它是如何工作的并编写我自己的方法,但如果我需要使用预先编写的库,那就必须这样做。

任何人都可以提供解释或资源,以便我了解这种三角测量的工作原理吗?

2 个答案:

答案 0 :(得分:3)

CGAL库提供了几个没有孔的简单多边形凸分解的实现。看看这个chapter

答案 1 :(得分:0)

我建议你看看Delaunay三角测量:WikipediaQHull是标准实现。 (作为参考,MATLAB依赖于Qhull:link

如果Qhull不适合您,请试试collection