为了账号安全,请及时绑定邮箱和手机立即绑定

如何确定多边形点列表是否按顺时针顺序?

如何确定多边形点列表是否按顺时针顺序?

如何确定多边形点列表是否按顺时针顺序?有一个点列表,我如何找到顺时针顺序?例如:point[0] = (5,0)point[1] = (6,4)point[2] = (4,5)point[3] = (1,5)point[4] = (1,0)会说它是逆时针(或逆时针,对某些人来说)。
查看完整描述

2 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

在非凸多边形(例如新月形)的情况下,一些建议的方法将失败。这是一个非常简单的非凸多边形(它甚至可以使用自相交的多边形,如图8,告诉你它是否主要是顺时针方向)。


边上的和,(x 2 - x 1)(y 2 + y 1)。如果结果为正,则曲线为顺时针,如果为负,则曲线为逆时针。(结果是封闭区域的两倍,带有+/-约定。)


point[0] = (5,0)   edge[0]: (6-5)(4+0) =   4

point[1] = (6,4)   edge[1]: (4-6)(5+4) = -18

point[2] = (4,5)   edge[2]: (1-4)(5+5) = -30

point[3] = (1,5)   edge[3]: (1-1)(0+5) =   0

point[4] = (1,0)   edge[4]: (5-1)(0+0) =   0

                                         ---

                                         -44  counter-clockwise


查看完整回答
反对 回复 2019-08-09
  • 2 回答
  • 0 关注
  • 1467 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信