一个点是否在多边形区域内的判断方法与流程

文档序号:20759982发布日期:2020-05-15 17:57阅读:1294来源:国知局
一个点是否在多边形区域内的判断方法与流程

本发明涉及一个点是否在多边形区域内的判断方法,属于计算机图像处理领域。



背景技术:

在一些应用场合需要判断一个点是否在指定的多边形区域内。比如,被监测人员是否离开设定的电子围栏区域,以及共享单车的停车位置是否在限制区域,还可以用于判断共享汽车所在区域从而进行订单分配。目前常采用射线法,具体为求解从该点发出的射线与多边形各边的交点,当交点数为奇数,则在内部,否则就在外部。这种方法用画图法来求解非常直观有效,但是在计算机系统内多边形区域是以离散点的形式来表述的,计算线与点集的交点很复杂,不适合计算机实现。因此,需要一种适合于计算机运算的判别方法。



技术实现要素:

本发明的目的是为了克服现有技术中的不足之处,提出一种一个点是否在多边形区域内的判断方法,采用向量角度的判别方法,算法简单有效,易于计算机实现。

本发明解决其技术问题所采用的技术方案是:

一个点是否在多边形区域内的判断方法,包括点p(x,y),以及由一组顶点a={(x1,y1),(x2,y2),(x3,y3)…..(xi,yi)….}组成的多边形区域,所述的判断方法包括以下步骤:

(1)计算所有顶点到点p的向量角度

(2)计算所有向量角度和

(3)当向量角度和<k,则点p(x,y)在所述的多边形区域内;否则,点p(x,y)不在所述的多边形区域内,其中k为判断阈值。

实施本发明的积极效果是:1、采用计算点到点之间的向量角度的方法进行判断,计算量小,易于计算机实现;2、随着边界顶点个数的增加,判据的准确度大大提高。

附图说明

图1是点位于多边形区域内部的情况;

图2是点位于多边形区域外部的情况。

具体实施方式

现结合附图对本发明作进一步说明:

参照图1-2,一个点是否在多边形区域内的判断方法,包括点p(x,y),以及由一组顶点a={(x1,y1),(x2,y2),(x3,y3)…..(xi,yi)….}组成的多边形区域。点p(x,y)为任意点,顶点a为多边形区域的顶点组成的数组,也可以是边界上分布的点集。

所述的判断方法包括以下步骤:

(1)计算所有顶点到点p的向量角度

点到点的向量角度代表这个向量的方向。

(2)计算所有向量角度和

(3)当向量角度和<k,则点p(x,y)在所述的多边形区域内;否则,点p(x,y)不在所述的多边形区域内,其中k为判断阈值。

如果点p处于多边形区域的内部,那么顶点到点p的向量是对称分布,那么向量角度和是趋近于零的,但是顶点a可能是有限的,可能存在不对称性,因此采用判断阈值k进行区分。随着顶点选取数量的增加,判断阈值k可以取很小的值。相反,如果点p处于多边形区域的外部,那么顶点到点p的向量是指向某个方向的,向量角度和也是在求和过程中不断增加。



技术特征:

1.一个点是否在多边形区域内的判断方法,包括点p(x,y),以及由一组顶点a={(x1,y1),(x2,y2),(x3,y3)…..(xi,yi)….}组成的多边形区域,其特征在于:所述的判断方法包括以下步骤:

(1)计算所有顶点到点p的向量角度

(2)计算所有向量角度和

(3)当向量角度和<k,则点p(x,y)在所述的多边形区域内;否则,点p(x,y)不在所述的多边形区域内,其中k为判断阈值。


技术总结
本发明公开了一个点是否在多边形区域内的判断方法,包括点P(x,y),以及由一组顶点A={(x1,y1),(x2,y2),(x3,y3)…..(xi,yi)….}组成的多边形区域,所述的判断方法包括以下步骤:(1)计算所有顶点到点P的向量角度;(2)计算所有向量角度和;(3)当向量角度和小于判断阈值,则点P(x,y)在所述的多边形区域内;否则,点P(x,y)不在所述的多边形区域内。该方案算法简单,运算速度快,可用于快速判断一个位置是否指定区域内。

技术研发人员:刘瑜
受保护的技术使用者:杭州晶一智能科技有限公司
技术研发日:2019.11.18
技术公布日:2020.05.15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1