我有一个由连接三角形组成的二维多边形网格,如下所示:
V = A, B, C, D, E, ...
I = 0, 4, 3,
...
V[0], V[4], V[3]
A-E-D
形成一个三角形)http://img694.imageshack.us/img694/8968/meshg.png 示例网格
现在我想遍历逆时针顺序中的边界点,起始顶点无关紧要:
G, H, A, D, C, F
原因是我想计算动态2D阴影,如本文所述:http://www.gamedev.net/reference/programming/features/2dsoftshadow/page3.asp
这是最好的方法吗?我想过计算一个凸包,但这看起来太贵了,因为它没有使用三角形顶点索引,必须有更好的方法。
有没有办法让它在一个表示中的几个多边形工作,这样我就可以获得每个连接多边形的边界点列表列表?
谢谢,abenthy
答案 0 :(得分:4)
这是一种方式:
(A, B)
是与(B, A)
)相同的边缘。由于三角形是逆时针方向,因此计算出的边界也是逆时针方向。这种方法很好,因为它不需要顶点的实际位置,它只使用索引指定的拓扑。