将凹多边形分解为凸多边形

时间:2010-03-16 20:23:20

标签: actionscript-3 physics polygon box2d

我正在使用仅支持凸多边形形状的游戏物理库(Box2D)。但是,我希望关卡生成器能够指定凹多边形,而不必担心。

那么,我怎样才能自动将凹多边形分解为凸多边形(甚至是所有三角形)。 速度会很酷,但实施的简便性更为重要。分手只会在游戏初始化时完成。

(我的语言是Flash / ActionScript 3,但这无关紧要)

3 个答案:

答案 0 :(得分:3)

您可能需要triangulation

答案 1 :(得分:3)

Bernard Chazelle和David P. Dobkin在1985年提出了一种算法:Optimal Convex Decompositions

其他方法可以在Wikipedia找到。

答案 2 :(得分:1)

本页介绍如何使用ActionScript 3将多边形转换为非复杂形状。代码很大,所以我不会在此处复制粘贴。

http://www.emanueleferonato.com/2011/09/12/create-non-convex-complex-shapes-with-box2d/