1

请注意,我是多边形和空间表示的初学者。

这就是我所拥有的:

我正在开发一个 C# 项目,我有一个顶点列表(由纬度/经度定义),代表一个封闭的多边形。多边形可以是凸的也可以是凹的,它不能有任何“洞”。这些顶点是相邻的,但可以是顺时针的,也可以是逆时针的。

这就是我想要的:

我想知道如何确定这个列表是顺时针还是逆时针,然后对顶点进行排序以使其顺时针。我可以自己做排序算法,但我不知道如何确定给定的顶点列表是 CW 还是 CCW。

4

1 回答 1

2

这是解决方案:https ://en.wikipedia.org/wiki/Curve_orientation#Orientation_of_a_simple_polygon

也适用于凹多边形,正如“实际考虑”部分中所指出的(基本上,测试的中间点需要是最上面和最左边的点)。

于 2013-10-30T16:12:55.060 回答