地理围栏判断方法及系统技术方案

技术编号:13733915 阅读:60 留言:0更新日期:2016-09-21 19:20
本发明专利技术提供了一种地理围栏判断方法及系统,本发明专利技术通过求地理围栏的多边形的多层最小外包矩形,其中,多边形包括多个顶点,下一层的每两个最小外包矩形包含于上一层的某个最小外包矩形内;判断坐标点是否在最底层的某个最小外包矩形内,最底层的最小外包矩形为第三层的最小外包矩形;如果不在,则判断坐标点不在所述地理围栏内;如果在,则由坐标点向任意方向引出一条射线,进一步判断所述射线是否与最底层的最小外包矩形内的地理围栏的多边形的线段相交,若相交,根据交点数判断所述坐标点是否在地理围栏内,若不相交,则判断所述坐标点不在地理围栏内,本发明专利技术可以更快速、高效地判断坐标点是否在地理围栏内,复杂度可以降低到O(logn)。

【技术实现步骤摘要】

本专利技术涉及一种地理围栏判断方法及系统
技术介绍
地理围栏(Geo-fencing)是LBS的一种新应用,就是用一个虚拟的栅栏围出一个虚拟地理边界。当手机进入、离开某个特定地理区域,或在该区域内活动时,手机可以接收自动通知和警告。地理围栏可应用于如下领域:1)位置社交网站就可以帮助用户在进入如图1中某一地区时1自动登记。2)当用户进入如图1中某个商场1的时候,手机自动收到相应商场发送的优惠券push消息。3)如图2所示,可应用于儿童定位手表,圈出安全活动范围等。地理围栏一般是把地图上的很多点连起来形成一个多边形区域,如何判断点在多边形内部呢?可以通过射线法来判断检测对象的坐标点是否在多边形内部。从该坐标点出发沿着任意方向画一条射线,依次判断该射线与每条边的交点,并统计交点个数,如果交点数为奇数,则判断该坐标点在多边形内部,如果交点数为偶数,则判断该坐标点在多边形的外部,射线法对凸和非凸多边形都适用,复杂度为O(N),其中,N为边数,多边形有N个顶点。另外,还有一些复杂的情况需要特殊处理:1)如果射线经过多顶点:当射线经过顶点时,判断就会出现异常情况,由于每个顶点是多边形两条边的公共顶点,所以现在规定,射线与两条边的公共顶点的交点个数只计算一次,避免重复计算。2)射线与多边形的边重合:这种情况不能用交点数的奇偶性来判断了,要快速地判断这个点是否在多边形的边上。
技术实现思路
本专利技术的目的在于提供一种地理围栏判断方法及系统,能够更快速、高效地判断坐标点是否在地理围栏内。为解决上述问题,本专利技术提供一种地理围栏判断方法,包括:求地理围栏的多边形的多层最小外包矩形,其中,所述多边形包括多个顶点,下一层的每两个最小外包矩形包含于上一层的某个最小外包矩形内;判断坐标点是否在最底层的某个最小外包矩形内,最底层的最小外包矩形为第三层的最小外
包矩形;如果不在任何一个最底层的最小外包矩形内,则判断坐标点不在所述地理围栏内;如果在最底层的某个最小外包矩形内,则由坐标点向任意方向引出一条射线,进一步判断所述射线是否与最底层的最小外包矩形内的地理围栏的多边形的线段相交,若相交,根据交点数判断所述坐标点是否在地理围栏内,若不相交,则判断所述坐标点不在地理围栏内。进一步的,在上述方法中,判断坐标点是否在最底层的某个最小外包矩形内,包括:通过射线法由最上层至最底层判断坐标点是否在上一层的最小外包矩形内,若在,进一步判断所述坐标点是否在该层最小外包矩形所包含的下一层的某个外包矩形内,若在,重复本步骤直至判断为所述坐标点在最底层的某个最小外包矩形内,若不在,则判断所述坐标点不在任何一个最底层的最小外包矩形内;若不在,则判断为所述坐标点不在任何一个最底层的最小外包矩形内。进一步的,在上述方法中,根据交点数判断坐标点是否在地理围栏内,包括:若交点数为偶数,则判断坐标点在地理围栏的外部;若交点数为奇数,则判断坐标点在地理围栏的内部。进一步的,在上述方法中,求地理围栏的多边形的多层最小外包矩形,包括:求地理围栏的多边形的最小外包矩形,将地理围栏的多边形的最小外包矩形作为最上层的最小外包矩形;将上一层的最小外包矩形进一步基本平分为两个下一层的最小外包矩形,重复本步骤,直至最底层的最小外包矩形内的顶点数少于预设个数。进一步的,在上述方法中,所述预设个数为5个。进一步的,在上述方法中,将上一层的最小外包矩形进一步基本平分为两个下一层的最小外包矩形,包括:若上一层的最小外包矩形内的顶点个数N为偶数,则平分得到的下一层的两个最小外包矩形的顶点个数分别为N/2;若上一层的最小外包矩形内的顶点个数N为奇数,则平分得到的下一层的两个最小外包矩形的顶点个数分别为N-1/2和N+1/2。根据本专利技术的另一面,提供一种地理围栏判断系统,包括:多层最小外包矩形获取模块,用于求地理围栏的多边形的多层最小外包矩形,其中,所述多边形包括多个顶点,下一层的每两个最小外包矩形包含于上一层的某个最小外包矩形内;判断模块,用于判断坐标点是否在最底层的某个最小外包矩形内,最底层的最小外包矩形为
第三层的最小外包矩形;如果不在任何一个最底层的最小外包矩形内,则判断坐标点不在所述地理围栏内;如果在最底层的某个最小外包矩形内,则由坐标点向任意方向引出一条射线,进一步判断所述射线是否与最底层的最小外包矩形内的地理围栏的多边形的线段相交,若相交,根据交点数判断所述坐标点是否在地理围栏内,若不相交,则判断所述坐标点不在地理围栏内。进一步的,在上述系统中,所述判断模块,用于通过射线法由最上层至最底层判断坐标点是否在上一层的最小外包矩形内,若在,进一步判断所述坐标点是否在该层最小外包矩形所包含的下一层的某个外包矩形内,若在,重复本步骤直至判断为所述坐标点在最底层的某个最小外包矩形内,若不在,则判断所述坐标点不在任何一个最底层的最小外包矩形内;若不在,则判断为所述坐标点不在任何一个最底层的最小外包矩形内。进一步的,在上述系统中,所述判断模块,用于若交点数为偶数,则判断坐标点在地理围栏的外部;若交点数为奇数,则判断坐标点在地理围栏的内部。进一步的,在上述系统中,多层最小外包矩形获取模块,用于求地理围栏的多边形的最小外包矩形,将地理围栏的多边形的最小外包矩形作为最上层的最小外包矩形;将上一层的最小外包矩形进一步基本平分为两个下一层的最小外包矩形,重复本步骤,直至最底层的最小外包矩形内的顶点数少于预设个数。进一步的,在上述系统中,所述预设个数为5个。进一步的,在上述系统中,多层最小外包矩形获取模块,用于若上一层的最小外包矩形内的顶点个数N为偶数,则平分得到的下一层的两个最小外包矩形的顶点个数分别为N/2;若上一层的最小外包矩形内的顶点个数N为奇数,则平分得到的下一层的两个最小外包矩形的顶点个数分别为N-1/2和N+1/2。与现有技术相比,本专利技术提供了一种地理围栏判断方法及系统,本专利技术通过求地理围栏的多边形的多层最小外包矩形,其中,多边形包括多个顶点,下一层的每两个最小外包矩形包含于上一层的某个最小外包矩形内;判断坐标点是否在最底层的某个最小外包矩形内,最底层的最小外包矩形为第三层的最小外包矩形;如果不在,则判断坐标点不在所述地理围栏内;如果在,则由坐标点向任意方向引出一条射线,进一步判断所述射线是否与最底层的最小外包矩形内的地理围栏的多边形的线段相交,若相交,根据交点数判断所述坐标点是否在地理围栏内,若不相交,则判断所述坐标点不在地理围栏内,本专利技术可以更快速、高效地判断坐标点是否在地理围栏内,复杂度可以降低到O(logn)。附图说明图1是地理围栏的一种应用方式;图2是地理围栏的另一种应用方式;图3是本专利技术一实施例的地理围栏判断方法的流程图;图4是本专利技术一实施例的多层最小外包矩形示意图;图5是本专利技术地理围栏判断方法一优选的实施例的流程图;图6是本专利技术地理围栏判断方法另一优选的实施例的流程图;图7是本专利技术一实施例的最上层的最小外包矩形的示意图;图8是本专利技术一实施例的第二层的最小外包矩形的示意图;图9是本专利技术一实施例的最底层的最小外包矩形的示意图;图10是本专利技术一实施例的地理围栏判断系统的模块图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和本文档来自技高网
...

【技术保护点】
一种地理围栏判断方法,其特征在于,包括:求地理围栏的多边形的多层最小外包矩形,其中,所述多边形包括多个顶点,下一层的每两个最小外包矩形包含于上一层的某个最小外包矩形内;判断坐标点是否在最底层的某个最小外包矩形内,最底层的最小外包矩形为第三层的最小外包矩形;如果不在任何一个最底层的最小外包矩形内,则判断坐标点不在所述地理围栏内;如果在最底层的某个最小外包矩形内,则由坐标点向任意方向引出一条射线,进一步判断所述射线是否与最底层的最小外包矩形内的地理围栏的多边形的线段相交,若相交,根据交点数判断所述坐标点是否在地理围栏内,若不相交,则判断所述坐标点不在地理围栏内。

【技术特征摘要】
1.一种地理围栏判断方法,其特征在于,包括:求地理围栏的多边形的多层最小外包矩形,其中,所述多边形包括多个顶点,下一层的每两个最小外包矩形包含于上一层的某个最小外包矩形内;判断坐标点是否在最底层的某个最小外包矩形内,最底层的最小外包矩形为第三层的最小外包矩形;如果不在任何一个最底层的最小外包矩形内,则判断坐标点不在所述地理围栏内;如果在最底层的某个最小外包矩形内,则由坐标点向任意方向引出一条射线,进一步判断所述射线是否与最底层的最小外包矩形内的地理围栏的多边形的线段相交,若相交,根据交点数判断所述坐标点是否在地理围栏内,若不相交,则判断所述坐标点不在地理围栏内。2.如权利要求1所述的地理围栏判断方法,其特征在于,判断坐标点是否在最底层的某个最小外包矩形内,包括:通过射线法由最上层至最底层判断坐标点是否在上一层的最小外包矩形内,若在,进一步判断所述坐标点是否在该层最小外包矩形所包含的下一层的某个外包矩形内,若在,重复本步骤直至判断为所述坐标点在最底层的某个最小外包矩形内,若不在,则判断所述坐标点不在任何一个最底层的最小外包矩形内;若不在,则判断为所述坐标点不在任何一个最底层的最小外包矩形内。3.如权利要求1所述的地理围栏判断方法,其特征在于,根据交点数判断坐标点是否在地理围栏内,包括:若交点数为偶数,则判断坐标点在地理围栏的外部;若交点数为奇数,则判断坐标点在地理围栏的内部。4.如权利要求3所述的地理围栏判断方法,其特征在于,求地理围栏的多边形的多层最小外包矩形,包括:求地理围栏的多边形的最小外包矩形,将地理围栏的多边形的最小外包矩形作为最上层的最小外包矩形;将上一层的最小外包矩形进一步基本平分为两个下一层的最小外包矩形,重复本步骤,直至最底层的最小外包矩形内的顶点数少于预设个数。5.如权利要求4所述的地理围栏判断方法,其特征在于,所述预设个数为5个。6.如权利要求4所述的地理围栏判断方法,其特征在于,将上一层的最小外包矩形进一步基本平分为两个下一层的最小外包矩形,包括:若上一层的最小外包矩形内的顶点个数N为偶数,则平分得到的下一层的两个最小外包矩形
\t的顶点个数分别为N/2;若上一层的最小外包矩形内的顶点个数N为奇数,则平分得到的下一层的两个最小外包矩形的顶点个...

【专利技术属性】
技术研发人员:赵军辉
申请(专利权)人:上海卓易科技股份有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1