判断多边形是顺时针还是逆时针的方法

来源:互联网 发布:连接oracle数据库 编辑:程序博客网 时间:2024/05/02 14:41

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

原创粉丝点击