【转】 判断多边形的方向是顺时针还是逆时针的一种方法

  • Post author:
  • Post category:其他


1、关于如何判定多边形是顺时针还是逆时针对于凸多边形而言,只需对某一个点计算cross product = ((xi – xi-1),(yi – yi-1)) x ((xi+1 – xi),(yi+1 – yi))

= (xi – xi-1) * (yi+1 – yi) – (yi – yi-1) * (xi+1 – xi)

如果上式的值为正,逆时针;为负则是顺时针

而对于一般的简单多边形,则需对于多边形的每一个点计算上述值,如果正值比较多,是逆时针;负值较多则为顺时针。

2、还有一种说明是取多边形的极点值,多边形的方向和这个顶点与其相邻两边构成的方向相同。


需要注意的是在屏幕坐标中,Y是向下的,所以在屏幕坐标系中看到的顺时针既是在Y轴向上的直角坐标系中看到的逆时针方向。

以下是原文:


http://debian.fmi.uni-sofia.bg/~sergei/cgsr/docs/clockwise.htm



版权声明:本文为yunzaitian163原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。