公开/公告号CN110650437A
专利类型发明专利
公开/公告日2020-01-03
原文格式PDF
申请/专利权人 苏宁云计算有限公司;
申请/专利号CN201911177532.1
发明设计人 刘明;
申请日2019-11-27
分类号H04W4/021(20180101);
代理机构11111 北京市万慧达律师事务所;
代理人刘艳丽
地址 210000 江苏省南京市玄武区徐庄软件园苏宁大道1-1号
入库时间 2023-12-17 06:51:40
法律状态公告日
法律状态信息
法律状态
2020-02-18
授权
授权
2020-02-04
实质审查的生效 IPC(主分类):H04W4/021 申请日:20191127
实质审查的生效
2020-01-03
公开
公开
技术领域
本申请涉及计算机应用技术领域,特别是涉及一种电子围栏上的围栏点删除方法、装置及计算机设备置、计算机设备和存储介质。
背景技术
电子围栏是基于某一地理位置以及特定的应用场景而建立一种虚拟的围栏,其中,地理位置可以为学校、一个或多个小区或者商店等。特定的应用场景可以为基于一个合理的停车范围设置一个电子围栏或者基于一个合理的配送范围设置一个电子围栏等等。
现有的技术中,由于生成电子围栏的方案限制或者生成电子围栏的过程中自带了一些无效的线条或者无效的面积,导致生成的电子围栏上容易出现一个或多个无效的部分,使得生成的电子围栏上包含无效的点,影响电子围栏的展示效果,难以满足用户需求。
发明内容
基于此,有必要针对上述技术问题,提供一种能够删除电子围栏上无效的围栏点的方法、装置、计算机设备和存储介质。
一种电子围栏上的围栏点删除方法,所述方法包括:
获取当前的电子围栏上当前遍历的起始围栏点的经纬度坐标值以及所述当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值;
根据所述当前遍历的起始围栏点的经纬度坐标值以及各所述待检测围栏点的经纬度坐标值,分别确定各所述待检测围栏点与所述当前遍历的起始围栏点之间的围栏长度值;
根据所述当前遍历的起始围栏点的经纬度坐标值以及各所述待检测围栏点的经纬度坐标值,分别确定各所述待检测围栏点与所述当前遍历的起始围栏点之间的第一直线距离值;
筛选出所述第一直线距离值小于预设距离值,并且所述围栏长度值与所述第一直线距离值之比大于预设比值的待检测围栏点,将筛选出的待检测围栏点作为候选围栏点;
根据各所述候选围栏点与所述当前遍历的起始围栏点之间的第一直线距离值,确定目标围栏点;
删除所述目标围栏点与所述当前遍历的起始围栏点之间的各个围栏点。
在其中一个实施例中,所述获取当前的电子围栏上当前遍历的起始围栏点的经纬度坐标值以及所述当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值,包括:
获取当前的电子围栏上各个围栏点的经纬度坐标值;
将各个围栏点对应的坐标值分别存储于数据链表的各个节点中,以创建所述数据链表;
从所述数据链表中获取当前的电子围栏上的当前遍历的起始围栏点的经纬度坐标值以及所述当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值。
在其中一个实施例中,所述根据所述当前遍历的起始围栏点的经纬度坐标值以及各所述待检测围栏点的经纬度坐标值,分别确定各所述待检测围栏点与所述当前遍历的起始围栏点之间的围栏长度值,包括:
分别计算所述当前遍历的起始围栏点到各所述待检测围栏点之间每相邻的两个待检测围栏点之间的第二直线距离值;
计算各个第二直线距离值之和得到所述当前遍历的起始围栏点与各所述待检测围栏点之间的围栏长度值。
在其中一个实施例中,所述根据各所述候选围栏点与所述当前遍历的起始围栏点之间的第一直线距离值,确定目标围栏点,包括:
选取与所述当前遍历的起始围栏点之间的第一直线距离值最小的候选围栏点作为所述目标围栏点。
在其中一个实施例中,所述删除所述目标围栏点与所述当前遍历的起始围栏点之间的各个围栏点的步骤之后,所述方法还包括:
以所述当前遍历的起始围栏点的下一节点作为下一轮遍历的起始围栏点,以所述下一轮遍历的起始围栏点后的预设遍历范围内的各个围栏点作为待检测围栏点,执行下一轮遍历,得到下一轮遍历对应的目标围栏点;
删除所述下一轮遍历对应的目标围栏点与所述下一轮遍历的起始围栏点之间的各个围栏点。
在其中一个实施例中,所述方法还包括:
依次以所述电子围栏上的各个围栏点作为一轮遍历的起始围栏点,执行对应的一轮遍历,得到各轮遍历对应的目标围栏点,并删除各轮遍历对应的目标围栏点与该轮遍历对应的起始围栏点之间的各个围栏点;
当所述电子围栏上的各个围栏点均作为一轮遍历的起始围栏点执行了对应的一轮遍历,且将各轮遍历对应的目标围栏点与该轮遍历对应的起始围栏点之间的各个围栏点删除之后,结束流程。
在其中一个实施例中,所述获取当前的电子围栏上当前遍历轮次的起始围栏点的经纬度坐标值以及所述当前遍历轮次的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值,包括:
在获取所述当前遍历轮次的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值时,若获取到所述电子围栏上的最后一个待检测围栏点的经纬度坐标值之后,还未达到所述预设遍历范围,则继续从所述电子围栏上的第一个待检测围栏点开始获取各个待检测围栏点的经纬度坐标值,直至获取到所述预设遍历范围内的各个待检测围栏点的经纬度坐标值。
一种电子围栏上无效点集的消除装置,所述装置包括:
获取模块,用于获取当前的电子围栏上当前遍历的起始围栏点的经纬度坐标值以及所述当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值;
第一确定模块,用于根据所述当前遍历的起始围栏点的经纬度坐标值以及各所述待检测围栏点的经纬度坐标值,分别确定各所述待检测围栏点与所述当前遍历的起始围栏点之间的围栏长度值;
第二确定模块,用于根据所述当前遍历的起始围栏点的经纬度坐标值以及各所述待检测围栏点的经纬度坐标值,分别确定各所述待检测围栏点与所述当前遍历的起始围栏点之间的第一直线距离值;
筛选模块,用于筛选出所述第一直线距离值小于预设距离值,并且所述围栏长度值与所述第一直线距离值之比大于预设比值的待检测围栏点,将筛选出的待检测围栏点作为候选围栏点;
第三确定模块,用于根据各所述候选围栏点与所述当前遍历的起始围栏点之间的第一直线距离值,确定目标围栏点;
删除模块,用于删除所述目标围栏点与所述当前遍历的起始围栏点之间的各个围栏点。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序执行上述任一实施例方法的步。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例方法的步。
上述的电子围栏上的围栏点删除方法、装置、计算机设备和存储介质,通过获取当前的电子围栏上当前遍历的起始围栏点的经纬度坐标值以及所述当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值;根据所述当前遍历的起始围栏点的经纬度坐标值以及各所述待检测围栏点的经纬度坐标值,分别确定各所述待检测围栏点与所述当前遍历的起始围栏点之间的围栏长度值;根据所述当前遍历的起始围栏点的经纬度坐标值以及各所述待检测围栏点的经纬度坐标值,分别确定各所述待检测围栏点与所述当前遍历的起始围栏点之间的第一直线距离值;筛选出所述第一直线距离值小于预设距离值,并且所述围栏长度值与所述第一直线距离值之比大于预设比值的待检测围栏点,将筛选出的待检测围栏点作为候选围栏点;根据各所述候选围栏点与所述当前遍历的起始围栏点之间的第一直线距离值,确定目标围栏点;删除所述目标围栏点与所述当前遍历的起始围栏点之间的各个围栏点。本申请实现了对生成的电子围栏上的无效的围栏点进行检测并删除,使得生成的电子围栏更加精简,更适合数据库存储及索引优化,展示效果更佳。
附图说明
图1为本申请一示例性实施例中电子围栏上的围栏点删除方法的应用环境图;
图2为本申请一示例性实施例中提供的一种电子围栏上的围栏点删除方法的流程示意图;
图3为本申请一示例性实施例中提供的电子围栏上删除围栏点之前的示意图;
图4为本申请一示例性实施例中提供的电子围栏上删除围栏点之后的示意图;
图5为本申请一示例性实施例中提供的一种电子围栏上的围栏点删除装置的结构框图
图6为本申请一示例性实施例中提供的计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优围栏点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为本申请一示例性实施例提供的一种电子围栏上的围栏点删除方法的应用环境示意图。如图1所示,该电子围栏上的围栏点删除方法应用于电子围栏上无效点集的删除系统,该电子围栏上无效点集的删除系统包括电子围栏生成服务器100以及终端101。服务器100通过网络102与终端101通信。
服务器100用于对当前的电子围栏上的各个围栏点的经纬度坐标值进行数据处理,得到电子围栏上的无效点集,并将无效点集删除。服务器100可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
终端101用于向服务器获取删除了无效点集之后的电子围栏,并将电子围栏展示于终端用户界面。终端101可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和台式计算机等。
网络102用于实现服务器100与终端101之间的网络连接。具体的,服务器100通过网络102将删除了无效点集之后的电子围栏送至终端101,终端101接收该电子围栏后将其绘制于电子地图上。
在一个实施例中,如图2所示,提供了一种电子围栏上的围栏点删除方法,以该方法应用于图1中的电子围栏生成服务器为例进行说明,包括以下步骤:
S11、获取当前的电子围栏上当前遍历的起始围栏点的经纬度坐标值以及当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值。
本申请中,当前围栏上包括多个围栏点,本申请对电子围栏上各个围栏点的经纬度坐标值进行遍历。本申请在对电子围栏上各个围栏点的经纬度坐标值进行遍历时,分多轮次进行遍历。
在每一轮遍历开始时,先选取遍历的起始围栏点,以及预设遍历范围内的各个待检测围栏点。本申请预先设定了预设遍历范围,预设遍历范围用于表征每一轮遍历的待检测围栏点的个数。当遍历完预设数量的围栏点之后,则本轮的遍历结束。
S12、根据当前遍历的起始围栏点的经纬度坐标值以及各待检测围栏点的经纬度坐标值,分别确定各待检测围栏点与当前遍历的起始围栏点之间的围栏长度值。
本申请通过各个待检测围栏点的经纬度坐标值分别确定各待检测围栏点与当前遍历的起始围栏点之间的围栏长度值。
S13、根据当前遍历的起始围栏点的经纬度坐标值以及各待检测围栏点的经纬度坐标值,分别确定各待检测围栏点与当前遍历的起始围栏点之间的第一直线距离值。
本申请中,在每轮遍历时,需要计算各待检测围栏点与当前遍历的起始围栏点之间的第一直线距离值。
S14、筛选出第一直线距离值小于预设距离值,并且围栏长度值与第一直线距离值之比大于预设比值的待检测围栏点,将筛选出的待检测围栏点作为候选围栏点。
本申请中,通过第一直线距离与比值筛选出的待检测围栏点作为候选围栏点。
S15、根据各候选围栏点与当前遍历的起始围栏点之间的第一直线距离值,确定目标围栏点。
本申请中,得到各个候选围栏点之后,计算各个候选围栏点与当前遍历的起始围栏点之间的第一直线距离,从中选取第一直线距离最小的围栏点作为本轮遍历的目标围栏点。目标围栏点即为本轮遍历所检测到的一段无效的围栏边界线的终点,通过后续步骤进一步获取该段无效的围栏边界线的起点,并删除起点到终点之间的各个无效点集。
S16、删除目标围栏点与当前遍历的起始围栏点之间的各个围栏点。
本申请获取轮一段无效的围栏边界线的起点和终点之后,将该段无效的围栏边界线上的点集删除,并执行下一轮的遍历。
在其中一个实施例中,上述的获取当前的电子围栏上当前遍历的起始围栏点的经纬度坐标值以及当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值,包括:
获取当前的电子围栏上各个围栏点的经纬度坐标值;
将各个围栏点对应的坐标值分别存储于数据链表的各个节点中,以创建数据链表;
从数据链表中获取当前的电子围栏上的当前遍历的起始围栏点的经纬度坐标值以及当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值。
具体的,本申请获取当前的电子围栏上各个围栏点的经纬度坐标值之前,还包括:
根根据预设地理位置的经纬度坐标值以及预设半径确定目标区域范围;利用预先设定的规则创建该目标区域范围对应的电子围栏;从预先建立通信连接的地图服务器中获取电子围栏上各个围栏点的经纬度坐标值。
本申请中,预先建立电子围栏。本申请建立电子围栏可以包括多种方案,具体根据不同的应用场景以及不同的规则建立不同的电子围栏。一种可能的应用场景中,例如,需建立一个用于描述某个指定门店的配送范围的电子围栏。针对该应用场景,本申请建立电子围栏的方案如下:
给定一个指定门店的中心位置的经纬度位置值以及预设半径;
以该指定门店的中心位置的经纬度坐标值对应的点为圆心,以预设半径为半径确定圆形区域;
依据圆形区域确定圆形区域的外切正方形,选取外切正方形上的预设数量等分点作为参考点,并依据门店中心位置的经纬度坐标值以及预设半径确定该多个参考点对应的经纬度坐标;
调用地图服务器中的导航路径数据库,依据该多个参考点的经纬度坐标查询导航路径数据库,得到多个参考点中每相邻两个参考点之间的导航路径;
由每条导航路径首尾连接得到配送范围对应的电子围栏。
另一种设计方案中,针对该应用场景,本申请建立电子围栏的方案如下:
给定一个指定门店的中心位置的经纬度坐标值以及预设半径;
以该指定门店的中心位置的经纬度坐标对应的点为圆心,以预设半径为半径确定圆形区域;
选取圆形区域边界线上的预设数量等分点作为参考点,并依据门店中心位置的经纬度坐标值以及预设半径确定该多个参考点对应的经纬度坐标;
调用地图服务器中的导航路径数据库,依据该多个参考点的经纬度坐标查询导航路径数据库,得到多个参考点中每相邻两个参考点之间的导航路径;
由每条导航路径首尾连接得到配送范围对应的电子围栏。
进一步的,本申请中的电子围栏生成服务器预先与指定的地图服务器建立通信连接。本申请可以从地图服务器中获取电子围栏上各个围栏点的经纬度坐标值。
进一步的,本申请依据各个围栏点的经纬度坐标值构建数据链表,数据链表中包括但不限于:各个围栏点的标示信息以及各个围栏点的坐标值。本申请可以从数据链表中获取各个围栏点的经纬度坐标值。
具体的,本申请中的数据链表为双向环形链表,双向环形链表是链表的一种,和单链表一样,双链表也是由多个节点组成,链表的每个节点都保存三个信息分别是:当前节点的值、指向它的前驱节点的前驱指针以及指向它后继节点的后继指针。其中,当前节点的值存储于数据域,指针存储于指针域。因为是环形的,所以最后一个节点的后继指针指向它后继节点的指针指向第一个节点,而第一个节点的前驱指针指向最后一个节点。所以,从双向环形链表中的任意一个节点开始,都可以很方便地访问它的前驱节点和后继节点。
在其中一个实施例中,上述的根据当前遍历的起始围栏点的经纬度坐标值以及各待检测围栏点的经纬度坐标值,分别确定各待检测围栏点与当前遍历的起始围栏点之间的围栏长度值,包括:
分别计算当前遍历的起始围栏点到各待检测围栏点之间每相邻两个待检测围栏点之间的第二直线距离值;
计算各个第二直线距离值之和得到当前遍历的起始围栏点与各待检测围栏点之间的围栏长度值。
另一种实施方式中,本申请根据当前遍历的起始围栏点的经纬度坐标值以及各待检测围栏点的经纬度坐标值,分别确定各待检测围栏点与当前遍历的起始围栏点之间的围栏长度值,包括:
预设在电子围栏上设定一个目标起点;
计算各个围栏点与目标起点之间的每相邻两个围栏点的第三直线距离值;
将各个第三直线距离值相加得到各个围栏点与目标起点的目标围栏长度;
将待检测围栏点对应的目标围栏长度减去当前遍历的起始围栏点对应的目标围栏长度,得到各个待检测围栏点与当前遍历的起始围栏点之间的围栏长度值。
进一步的,筛选出第一直线距离值小于预设距离值,并且围栏长度值与第一直线距离值之比大于预设比值的待检测围栏点,将筛选出的待检测围栏点作为候选围栏点。
本申请中,若第一直线距离值均大于预设距离值,并且围栏长度值与第一直线距离值之比均小于预设比值时,则说明本轮遍历中不存在候选围栏点,则直接跳到下一轮遍历。以当前遍历的起始围栏点的下一节点作为下一轮次遍历的起始围栏点,以下一轮次遍历的起始围栏点后的预设遍历范围内的各个围栏点作为待检测围栏点,执行下一轮的遍历,得到下一轮遍历对应的目标围栏点;删除下一轮遍历对应的目标围栏点与下一轮次遍历的起始围栏点之间的各个围栏点。
在其中一个实施例中,上述的根据各候选围栏点与当前遍历的起始围栏点之间的第一直线距离值,确定目标围栏点,包括:
选取与当前遍历的起始围栏点之间的第一直线距离值最小的候选围栏点作为目标围栏点。
本申请中选取与当前遍历的起始围栏点之间的第一直线距离值最小的候选围栏点作为目标围栏点,可以保证选取的无效点集最为合适,若选取其他的候选点,则可能导致选取到有效的点集,使得有效的点集被删除。
在其中一个实施例中,删除目标围栏点与当前遍历的起始围栏点之间的各个围栏点的步骤之后,方法还包括:
以当前遍历的起始围栏点的下一节点作为下一轮遍历的起始围栏点,以下一轮遍历的起始围栏点后的预设遍历范围内的各个围栏点作为待检测围栏点,执行下一轮遍历,得到下一轮遍历对应的目标围栏点;
删除下一轮遍历对应的目标围栏点与下一轮遍历的起始围栏点之间的各个围栏点。
本申请分多轮次对各个围栏点的经纬度坐标值进行遍历。预先设定一个预设遍历范围,每次遍历时选取一个遍历的起始节点,从起始节点开始遍历,直至遍历至预设遍历范围对应的围栏点,则完成本轮的遍历,得到本轮遍历的结果。在一轮的遍历后可以得到多个候选围栏点,进一步从候选围栏点中选取目标围栏点,删除各轮遍历对应的目标围栏点与该轮遍历对应的起始围栏点之间的各个围栏点。
在其中一个实施例中,方法还包括:
依次以电子围栏上的各个围栏点作为一轮遍历的起始围栏点,执行对应的一轮遍历,得到各轮遍历对应的目标围栏点,并删除各轮遍历对应的目标围栏点与该轮遍历对应的起始围栏点之间的各个围栏点;
当电子围栏上的各个围栏点均作为一轮遍历的起始围栏点执行了对应的一轮遍历,且将各轮遍历对应的目标围栏点与该轮遍历对应的起始围栏点之间的各个围栏点删除之后,结束流程。
本申请需要继续多轮次的遍历,每次遍历的起始围栏点不同,每次遍历的起始围栏点都选取上一轮遍历的起始围栏点后的一个围栏点。因此,随着遍历轮次的不断继续,遍历的起始围栏点也不同。当本轮次的遍历中,遍历的起始围栏点为电子围栏的最后一个待检测围栏点,或者,当电子围栏上的各个围栏点均作为一轮遍历的起始围栏点执行了对应的一轮遍历之后时,则说明本轮遍历为最后一次遍历,该轮次遍历后,将得到的无效点集删除,并结束流程。
在其中一个实施例中,上述的获取当前的电子围栏上当前遍历轮次的起始围栏点的经纬度坐标值以及当前遍历轮次的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值,包括:
在获取当前遍历轮次的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值时,若获取到电子围栏上的最后一个待检测围栏点的经纬度坐标值之后,还未达到预设遍历范围,则继续从电子围栏上的第一个待检测围栏点开始获取各个待检测围栏点的经纬度坐标值,直至获取到预设遍历范围内的各个待检测围栏点的经纬度坐标值。其中,所述电子围栏上的第一个待检测围栏点具体指的是电子围栏上第一轮遍历的第一个待检测围栏点。
本申请中,电子围栏是一个闭合图形,该闭合图形的任何一个线段区域都可能存在无效的点集。本申请需要考虑当前围栏上第一个围栏点与最后一个围栏点之间也可能存在无效点集需要被删除。因此,本申请将各个围栏点的经纬度坐标值预先存储于数据链表中。由于数据链表是双向环形链表,故其头部节点与其尾部节点是相互连接的。从尾部的节点可以继续遍历到头节点。本申请通过采用双向环形链表实现链电子围栏的预设起点与终点之间的无效点集的检测与删除,使得无效点集的排查更佳彻底。
请参考图3,图3为一种实施例中,电子围栏上删除围栏点之前的示意图。如图3所示,删除无效点集之前的电子围栏上包括闭合图形21以及无效点集22。由各个无效点集构成了多个无效的面积,故需删除。
请参考图4,图4为为一种实施例中,电子围栏上删除围栏点之后的示意图。如图4所示,删除无效点集之后的电子围栏上包括闭合图形31,该闭合图形31上不存在无效的面积,提升了电子围栏的展示效果。
在一个实施例中,如图5所示,提供了一种电子围栏上的围栏点删除装置,包括:
获取模块11,用于获取当前的电子围栏上当前遍历的起始围栏点的经纬度坐标值以及当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值;
第一确定模块12,用于根据当前遍历的起始围栏点的经纬度坐标值以及各待检测围栏点的经纬度坐标值,分别确定各待检测围栏点与当前遍历的起始围栏点之间的围栏长度值;
第二确定模块13,用于根据当前遍历的起始围栏点的经纬度坐标值以及各待检测围栏点的经纬度坐标值,分别确定各待检测围栏点与当前遍历的起始围栏点之间的第一直线距离值;
筛选模块14,用于筛选出第一直线距离值小于预设距离值,并且围栏长度值与第一直线距离值之比大于预设比值的待检测围栏点,将筛选出的待检测围栏点作为候选围栏点;
第三确定模块15,用于根据各候选围栏点与当前遍历的起始围栏点之间的第一直线距离值,确定目标围栏点;
删除模块16,用于删除目标围栏点与当前遍历的起始围栏点之间的各个围栏点。
在其中一个实施例中,获取模块11,包括:
第一获取单元,用于获取当前的电子围栏上各个围栏点的经纬度坐标值;
将各个围栏点对应的坐标值分别存储于数据链表的各个节点中,以创建数据链表;
从数据链表中获取当前的电子围栏上的当前遍历的起始围栏点的经纬度坐标值以及当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值。
在其中一个实施例中,第一确定模块12,包括:
第一确定单元,用于分别计算所述当前遍历的起始围栏点到各所述待检测围栏点之间每相邻的两个待检测围栏点之间的第二直线距离值;
计算各个第二直线距离值之和得到当前遍历的起始围栏点与各待检测围栏点之间的围栏长度值。
在其中一个实施例中,第二确定模块12,包括:
第二确定单元,用于选取与当前遍历的起始围栏点之间的第一直线距离值最小的候选围栏点作为目标围栏点。
在其中一个实施例中,删除模块16,还包括:
遍历单元,用于以当前遍历的起始围栏点的下一节点作为下一轮遍历的起始围栏点,以下一轮遍历的起始围栏点后的预设遍历范围内的各个围栏点作为待检测围栏点,执行下一轮遍历,得到下一轮遍历对应的目标围栏点;
删除下一轮遍历对应的目标围栏点与下一轮遍历的起始围栏点之间的各个围栏点。
在其中一个实施例中,删除模块16,还包括:
删除单元,用于依次以电子围栏上的各个围栏点作为一轮遍历的起始围栏点,执行对应的一轮遍历,得到各轮遍历对应的目标围栏点,并删除各轮遍历对应的目标围栏点与该轮遍历对应的起始围栏点之间的各个围栏点;
当电子围栏上的各个围栏点均作为一轮遍历的起始围栏点执行了对应的一轮遍历,且将各轮遍历对应的目标围栏点与该轮遍历对应的起始围栏点之间的各个围栏点删除之后,结束流程。
在其中一个实施例中,获取模块11,包括:
第二获取单元,用于在获取当前遍历轮次的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值时,若获取到电子围栏上的最后一个待检测围栏点的经纬度坐标值之后,还未达到预设遍历范围,则继续从电子围栏上的第一个待检测围栏点开始获取各个待检测围栏点的经纬度坐标值,直至获取到预设遍历范围内的各个待检测围栏点的经纬度坐标值。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是业务处理服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种电子围栏上的围栏点删除方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取当前的电子围栏上当前遍历的起始围栏点的经纬度坐标值以及当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值;根据当前遍历的起始围栏点的经纬度坐标值以及各待检测围栏点的经纬度坐标值,分别确定各待检测围栏点与当前遍历的起始围栏点之间的围栏长度值;根据当前遍历的起始围栏点的经纬度坐标值以及各待检测围栏点的经纬度坐标值,分别确定各待检测围栏点与当前遍历的起始围栏点之间的第一直线距离值;筛选出第一直线距离值小于预设距离值,并且围栏长度值与第一直线距离值之比大于预设比值的待检测围栏点,将筛选出的待检测围栏点作为候选围栏点;根据各候选围栏点与当前遍历的起始围栏点之间的第一直线距离值,确定目标围栏点;删除目标围栏点与当前遍历的起始围栏点之间的各个围栏点。
在一个实施例中,处理器执行计算机程序实现上述的获取当前的电子围栏上当前遍历的起始围栏点的经纬度坐标值以及当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值步骤时,具体实现以下步骤:
获取当前的电子围栏上各个围栏点的经纬度坐标值;
将各个围栏点对应的坐标值分别存储于数据链表的各个节点中,以创建数据链表;
从数据链表中获取当前的电子围栏上的当前遍历的起始围栏点的经纬度坐标值以及当前遍历的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值。
在一个实施例中,处理器执行计算机程序实现上述的根据当前遍历的起始围栏点的经纬度坐标值以及各待检测围栏点的经纬度坐标值,分别确定各待检测围栏点与当前遍历的起始围栏点之间的围栏长度值步骤时,具体实现以下步骤:
分别计算所述当前遍历的起始围栏点到各所述待检测围栏点之间每相邻的两个待检测围栏点之间的第二直线距离值;
计算各个第二直线距离值之和得到当前遍历的起始围栏点与各待检测围栏点之间的围栏长度值。
在一个实施例中,处理器执行计算机程序实现上述的根据各候选围栏点与当前遍历的起始围栏点之间的第一直线距离值,确定目标围栏点步骤时,具体实现以下步骤:
选取与当前遍历的起始围栏点之间的第一直线距离值最小的候选围栏点作为目标围栏点。
在一个实施例中,处理器执行计算机程序实现上述的删除目标围栏点与当前遍历的起始围栏点之间的各个围栏点步骤时,具体实现以下步骤:
以当前遍历的起始围栏点的下一节点作为下一轮遍历的起始围栏点,以下一轮遍历的起始围栏点后的预设遍历范围内的各个围栏点作为待检测围栏点,执行下一轮遍历,得到下一轮遍历对应的目标围栏点;
删除下一轮遍历对应的目标围栏点与下一轮遍历的起始围栏点之间的各个围栏点。
在一个实施例中,处理器执行计算机程序时,具体实现以下步骤:
依次以电子围栏上的各个围栏点作为一轮遍历的起始围栏点,执行对应的一轮遍历,得到各轮遍历对应的目标围栏点,并删除各轮遍历对应的目标围栏点与该轮遍历对应的起始围栏点之间的各个围栏点;
当电子围栏上的各个围栏点均作为一轮遍历的起始围栏点执行了对应的一轮遍历,且将各轮遍历对应的目标围栏点与该轮遍历对应的起始围栏点之间的各个围栏点删除之后,结束流程。
在一个实施例中,处理器执行计算机程序实现上述的获取当前的电子围栏上当前遍历轮次的起始围栏点的经纬度坐标值以及当前遍历轮次的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值步骤时,具体实现以下步骤:
在获取当前遍历轮次的起始围栏点对应的预设遍历范围内的各待检测围栏点的经纬度坐标值时,若获取到电子围栏上的最后一个待检测围栏点的经纬度坐标值之后,还未达到预设遍历范围,则继续从电子围栏上的第一个待检测围栏点开始获取各个待检测围栏点的经纬度坐标值,直至获取到预设遍历范围内的各个待检测围栏点的经纬度坐标值。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
机译: 用于操作电子围栏设备的方法和电子围栏设备
机译: 用于操作电子围栏设备的方法和电子围栏设备
机译: 用于操作电子围栏的设备的方法和用于电子围栏的设备