基于经纬度的城市查询方法、装置、设备及存储介质制造方法及图纸

技术编号:27656197 阅读:14 留言:0更新日期:2021-03-12 14:18
本申请关于一种基于经纬度的城市查询方法、装置、设备及存储介质,涉及电子地图技术领域。该方法包括:获取目标经纬度;将目标经纬度转换为目标Geohash编码;基于目标Geohash编码在包含第一类型索引区域的地图索引中进行查询,获得目标Geohash区域;响应于目标Geohash区域为第一类型索引区域,确定目标经纬度在目标Geohash区域中的目标落点区域;基于目标落点区域,确定目标经纬度对应的城市查询结果。通过上述方法,使得在通过经纬度进行城市查询的过程中,减少计算机设备的计算量,提高计算机设备的搜索性能,从而减少由于城市查询造成的对计算机设备计算资源的过多占用。

【技术实现步骤摘要】
基于经纬度的城市查询方法、装置、设备及存储介质
本申请涉及电子地图
,特别涉及一种基于经纬度的城市查询方法、装置、设备及存储介质。
技术介绍
在电子地图的使用过程中,用户具有通过输入经纬度坐标获取该经纬度坐标对应的城市信息的需求。在相关技术中,通过使用R树索引,利用城市边界进行划分,用最小邻接矩形建立叶子节点,然后依次向上建立中间节点,从而提高通过经纬度搜索城市性的搜索性能。然而,在百亿级别的经纬度映射城市的场景下,使用R树索引会导致最小邻接矩形的大面积重叠,由此需要通过射线法进行点与多边形的关系判断,来确定点与多边形之间的关系,从而带来过多的计算量,导致搜索性能下降,同时造成对终端计算资源的多占用。
技术实现思路
本申请关于一种基于经纬度的城市查询方法、装置、设备及存储介质,能够在百亿级别的经纬度映射城市的场景下,减少计算机设备的计算量,提高搜索效率,减少对计算机计算资源的过多占用。该技术方案如下:一方面,提供了一种基于经纬度的城市查询方法,所述方法包括:获取目标经纬度;将所述目标经纬度转换为目标Geohash编码;基于所述目标Geohash编码在地图索引中进行查询,获得目标Geohash区域;所述地图索引包含各个索引区域与Geohash编码之间的对应关系;所述各个索引区域包含第一类型索引区域,所述第一类型索引区域包含至少两个落点区域;响应于所述目标Geohash区域为所述第一类型索引区域,确定所述目标经纬度在所述目标Geohash区域中的目标落点区域;所述目标落点区域为所述目标Geohash区域包含的至少两个落点区域中的一个;基于所述目标落点区域,确定所述目标经纬度对应的城市查询结果。在一种可能的实现方式中,所述响应于所述目标Geohash区域为所述第一类型索引区域,确定所述目标经纬度在所述目标Geohash区域中的目标落点区域,包括:响应于所述目标Geohash区域为所述第一类型索引区域,基于所述目标经纬度,对所述目标Geohash区域包含的至少两个落点区域进行射线计算;基于射线计算结果,确定所述目标落点区域。在一种可能的实现方式中,所述基于射线计算结果,确定所述目标落点区域,包括:获取所述至少两个落点区域中,所述射线计算结果为奇数的落点区域为所述目标落点区域。在一种可能的实现方式中,每个所述落点区域分别对应不同的城市编码,所述基于所述目标落点区域,确定所述目标经纬度对应的城市查询结果,包括:基于所述目标落点区域,确定所述落点区域对应的城市编码;基于所述城市编码,输出所述目标经纬度对应的所述城市查询结果。在一种可能的实现方式中,所述各个索引区域包含第二类型索引区域,所述方法还包括:响应于所述目标Geohash区域为所述第二类型索引区域,基于所述目标Geohash区域的所述Geohash编码,确定所述目标经纬度对应的所述城市查询结果;所述第二类型索引区域包含单个落点区域。在一种可能的实现方式中,在所述获取目标经纬度之前,所述方法包括:获取至少一个城市对应的多边形,所述至少一个城市对应的多边形是基于所述至少一个城市的城市边界数据构建的;基于目标城市对应的多边形上的点确定Geohash区域,获得目标城市对应的第一类型索引区域;每个所述Geohash区域具有对应的Geohash编码;所述目标城市是所述至少一个城市中的任意一个;基于所述目标城市对应的第一类型索引区域与所述目标城市对应的多边形,获取所述目标城市对应的第二类型索引区域;基于所述目标城市对应的第一类型索引区域和所述目标城市对应的第二类型索引区域,构建所述目标城市的城市索引。在一种可能的实现方式中,所述基于所述目标城市对应的第一类型索引区域和所述目标城市对应的第二类型索引区域,构建所述目标城市的城市索引,包括:获取所述目标城市对应的第一类型索引区域中的至少两个落点区域中对应于所述目标城市的有效落点区域;基于所述目标城市对应的第二类型索引区域以及所述目标城市对应的第一类型索引区域中对应于所述目标城市的有效落点区域,构建所述目标城市的城市索引。在一种可能的实现方式中,所述至少一个城市对应的多边形是按照指定方向对所述至少一个城市的所述城市边界数据进行连接构建的;所述获取所述目标城市对应的第一类型索引区域中的至少两个落点区域中对应于所述目标城市的有效落点区域,包括:基于所述目标城市对应的多边形的边以及所述指定方向,获取所述目标城市对应的第一类型索引区域的至少两个落点区域中,对应于所述目标城市的有效落点区域。在一种可能的实现方式中,所述指定方向包括顺时针方向以及逆时针方向;基于所述目标城市对应的多边形的边以及所述指定方向,获取所述第一类型索引区域的至少两个落点区域中,对应于所述目标城市的有效落点区域,包括:响应于所述指定方向为顺时针方向,将所述目标城市对应的多边形的边的左侧的所述目标城市对应的第一类型索引的落点区域,获取为对应于所述目标城市的有效落点区域;响应于所述指定方向为逆时针方向,将所述目标城市对应的多边形的边的右侧的所述目标城市对应的第一类型索引区域的落点区域,获取为对应于所述目标城市的有效落点区域。在一种可能的实现方式中,所述基于所述目标城市对应第一类型索引区域与所述目标城市对应的多边形,获取所述目标城市对应的第二类型索引区域,包括:获取所述目标城市对应的多边形的最小邻接矩形;基于所述最小邻接矩形中包含的Geohash区域以及所述目标城市对应的第一类型索引区域,确定所述目标城市对应的第二类型索引区域。在一种可能的实现方式中,所述基于所述最小邻接矩形中的Geohash区域以及所述目标城市对应的第一类型索引区域,确定所述目标城市对应的第二类型索引区域,包括:获取所述最小邻接矩形中包含的Geohash区域中的待确定Geohash区域,所述待确定Geohash区域是指所述最小邻接矩形中除所述目标城市对应的第一类型索引区域之外的Geohash区域;基于所述待确定Geohash区域,对所述目标城市对应的多边形进行射线计算;基于射线计算结果,确定所述目标城市对应的第二类型索引区域。在一种可能的实现方式中,所述基于射线计算结果,确定所述目标城市对应的第二类型索引区域,包括:获取所述待确定Geohash区域中,对所述目标城市对应的多边形各条边的射线计算结果为奇数的Geohash区域为所述目标城市对应的第二类型索引区域。在一种可能的实现方式中,所述基于所述目标城市对应的第二类型索引区域以及所述目标城市对应的第一类型索引区域中对应于所述目标城市的有效落点区域,构建所述目标城市的城市索引,包括:建立所述目标城市对应的第二类型索引区域与所述目标城市的城市编码之间的第一映射关系;建立所述目标城市对应的第一类型索引区域中对应于所述目标城市的有效落点区域本文档来自技高网...

【技术保护点】
1.一种基于经纬度的城市查询方法,其特征在于,所述方法包括:/n获取目标经纬度;/n将所述目标经纬度转换为目标Geohash编码;/n基于所述目标Geohash编码在地图索引中进行查询,获得目标Geohash区域;所述地图索引包含各个索引区域与Geohash编码之间的对应关系;所述各个索引区域包含第一类型索引区域,所述第一类型索引区域包含至少两个落点区域;/n响应于所述目标Geohash区域为所述第一类型索引区域,确定所述目标经纬度在所述目标Geohash区域中的目标落点区域;所述目标落点区域为所述目标Geohash区域包含的至少两个落点区域中的一个;/n基于所述目标落点区域,确定所述目标经纬度对应的城市查询结果。/n

【技术特征摘要】
1.一种基于经纬度的城市查询方法,其特征在于,所述方法包括:
获取目标经纬度;
将所述目标经纬度转换为目标Geohash编码;
基于所述目标Geohash编码在地图索引中进行查询,获得目标Geohash区域;所述地图索引包含各个索引区域与Geohash编码之间的对应关系;所述各个索引区域包含第一类型索引区域,所述第一类型索引区域包含至少两个落点区域;
响应于所述目标Geohash区域为所述第一类型索引区域,确定所述目标经纬度在所述目标Geohash区域中的目标落点区域;所述目标落点区域为所述目标Geohash区域包含的至少两个落点区域中的一个;
基于所述目标落点区域,确定所述目标经纬度对应的城市查询结果。


2.根据权利要求1所述的方法,其特征在于,所述响应于所述目标Geohash区域为所述第一类型索引区域,确定所述目标经纬度在所述目标Geohash区域中的目标落点区域,包括:
响应于所述目标Geohash区域为所述第一类型索引区域,基于所述目标经纬度,对所述目标Geohash区域包含的至少两个落点区域进行射线计算;
基于射线计算结果,确定所述目标落点区域。


3.根据权利要求2所述的方法,其特征在于,所述基于射线计算结果,确定所述目标落点区域,包括:
确定所述至少两个落点区域中,所述射线计算结果为奇数的落点区域为所述目标落点区域。


4.根据权利要求3所述的方法,其特征在于,每个所述落点区域分别对应不同的城市编码,所述基于所述目标落点区域,确定所述目标经纬度对应的城市查询结果,包括:
基于所述目标落点区域,确定所述落点区域对应的城市编码;
基于所述城市编码,输出所述目标经纬度对应的所述城市查询结果。


5.根据权利要求1所述的方法,其特征在于,所述各个索引区域包含第二类型索引区域,所述方法还包括:
响应于所述目标Geohash区域为所述第二类型索引区域,基于所述目标Geohash区域的所述Geohash编码,确定所述目标经纬度对应的所述城市查询结果;所述第二类型索引区域包含单个落点区域。


6.根据权利要求1所述的方法,其特征在于,在所述获取目标经纬度之前,所述方法包括:
获取至少一个城市对应的多边形,所述至少一个城市对应的多边形是基于所述至少一个城市的城市边界数据构建的;
基于目标城市对应的多边形上的点确定Geohash区域,获得目标城市对应的第一类型索引区域;每个所述Geohash区域具有对应的Geohash编码;所述目标城市是所述至少一个城市中的任意一个;
基于所述目标城市对应的第一类型索引区域与所述目标城市对应的多边形,获取所述目标城市对应的第二类型索引区域;
基于所述目标城市对应的第一类型索引区域和所述目标城市对应的第二类型索引区域,构建所述目标城市的城市索引。


7.根据权利要求6所述的方法,其特征在于,所述基于所述目标城市对应的第一类型索引区域和所述目标城市对应的第二类型索引区域,构建所述目标城市的城市索引,包括:
获取所述目标城市对应的第一类型索引区域中的至少两个落点区域中对应于所述目标城市的有效落点区域;
基于所述目标城市对应的第二类型索引区域以及所述目标城市对应的第一类型索引区域中对应于所述目标城市的有效落点区域,构建所述目标城市的城市索引。


8.根据权利要求7所述的方法,其特征在于,所述至少一个城市对应的多边形是按照指定方向对所述至少一个城市的所述城市边界数据进行连接构建的;
所述获取所述目标城市对应的第一类型索引区域中的至少两个落点区域中对应于所述目标城市的有效落点区域,包括:
基于所述目标城市对应的多边形的边以及所述指定方向,获取所述目标城市对应的第一类型索引区域的至少两个落点区域中,对应于所述目标城市的有效落点区域。


9.根据权利要求8所述的方法,其特征在于,所述指定方向包括顺时针方向以及逆时针方向;
基于所述目标城市对应的多...

【专利技术属性】
技术研发人员:赵领杰秦思源王露珠
申请(专利权)人:北京三快在线科技有限公司
类型:发明
国别省市:北京;11

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

1