判断封闭多边形的点的序列是顺时针还是逆时针
2011-10-20 12:32
2715 查看
原理如下:(本方法有问题,希望看的朋友注意,不要误导了你们)
判断的方法如下图所示,首先找到最西边的点,在图中是3号点,则从该点前一个点开始的连续三个点(在图中是2、3、4三个点)的排序就代表了整个拐点序列的排序;而这三个点的排序可以通过比较坐标方位角判断出来:若中间点到前点的坐标方位角小于中间点到后点的坐标方位角,则为逆时针排列,反之为顺时针排列。在图中α32小于α34,因此为逆时针排列。
注:“坐标方位角”是测量学名词,指从坐标系北方向顺时针转向有向直线的夹角。
上述方法适用范围有限,而且算法本身不是很鲁棒!我们知道,对于给定的一个走向,如果从正面看是顺时针,从反面看则为逆时针。所以给定一个面内的走向序列,而不给出该面的法线空谈顺时针逆时针是不正确的。 所以正确的正确的做法是:顺着走向连续的三个点构造两个向量,用向量的叉乘结果与法向作比较,同向则为顺时针,否则为逆时针!
判断的方法如下图所示,首先找到最西边的点,在图中是3号点,则从该点前一个点开始的连续三个点(在图中是2、3、4三个点)的排序就代表了整个拐点序列的排序;而这三个点的排序可以通过比较坐标方位角判断出来:若中间点到前点的坐标方位角小于中间点到后点的坐标方位角,则为逆时针排列,反之为顺时针排列。在图中α32小于α34,因此为逆时针排列。
注:“坐标方位角”是测量学名词,指从坐标系北方向顺时针转向有向直线的夹角。
上述方法适用范围有限,而且算法本身不是很鲁棒!我们知道,对于给定的一个走向,如果从正面看是顺时针,从反面看则为逆时针。所以给定一个面内的走向序列,而不给出该面的法线空谈顺时针逆时针是不正确的。 所以正确的正确的做法是:顺着走向连续的三个点构造两个向量,用向量的叉乘结果与法向作比较,同向则为顺时针,否则为逆时针!
相关文章推荐
- 关于判断一个多边形环视顺时针还是逆时针的算法
- 多边形坐标点记录是顺时针还是逆时针的判断
- 判断多边形是顺时针还是逆时针的方法
- 给定一个多边形的形状点列如何判断顺时针还是逆时针
- 判断多边形是顺时针还是逆时针(C#实现)
- 【转】 判断多边形的方向是顺时针还是逆时针的一种方法
- 判断三点是顺时针还是逆时针方向
- 判断两个平面向量夹角是顺时针还是逆时针
- 如何判定多边形是顺时针还是逆时针
- 判断一条直线到另一条直线所构成的角度是逆时针还是顺时针方向。
- 如何判断一个三角型是逆时针还是顺时针
- 判断三点是顺时针还是逆时针方向
- 判断三点是顺时针还是逆时针方向
- 判断三点是顺时针还是逆时针方向
- 判断三点是顺时针还是逆时针方向
- 判断两向量之间夹角是顺时针还是逆时针?
- 判断三点是顺时针还是逆时针方向
- 判断三点是顺时针还是逆时针方向
- 判断三角形三个点是逆时针还是顺时针
- 向量叉乘判断两向量之间是顺时针还是逆时针