一种SVG地图数据的加载方法、装置及系统制造方法及图纸

技术编号:17879042 阅读:32 留言:0更新日期:2018-05-06 00:49
本发明专利技术公开了一种SVG地图数据的加载方法、装置及系统,通过应用层加载地图数据,并向服务器发送数据获取请求,该数据获取请求不是获取全部地图数据的请求,而是获取增量地图数据的请求,因此根据该请求,需要对地图属性进行更新,对地图区域类元素及地图POI类元素进行筛选,并通过所有数据生成SVG地图数据,以便应用层根据返回的SVG地图数据进行加载,可见,通过这种地图增量数据的动态构建机制,可以保障对SVG地图增量数据的高效识别、构建、返回,并且对地图数据的增量式加载,提高了数据获取的响应时间,减轻了图形渲染压力,从而大大提高了地图加载效率,使得用户体验流畅。

Loading method, device and system for SVG map data

The invention discloses a method, device and system for loading the SVG map data. The data is loaded by the application layer and the data acquisition request is sent to the server. The data acquisition request is not the request to obtain all the map data, but the request of the incremental map data. Therefore, the map needs the map based on the request. The attribute is updated, the map region elements and the map POI elements are screened, and the SVG map data is generated through all the data so that the application layer is loaded according to the returned SVG map data. It can be seen that the dynamic construction mechanism of the incremental data of this map can ensure the efficient recognition of the incremental data of the SVG map. Do not, build, return, and add the incremental load to the map data, improve the response time of data acquisition, reduce the pressure of graphics rendering, thus greatly improve the efficiency of map loading, and make the user experience smooth.

【技术实现步骤摘要】
一种SVG地图数据的加载方法、装置及系统
本专利技术涉及矢量地图加载技术,更具体地说,涉及一种SVG地图数据的加载方法、装置及系统。
技术介绍
矢量地图是地图表达的常用方式,具有数据结构紧凑,冗余度低,表达精度高,图形显示质量好,有利于网络和检索分析等优点。SVG(ScalableVectorGraphics,可缩放矢量图形)是一种使用XML(ExtensibleMarkupLanguage,可扩展标记语言)来描述二维图形的图形格式,由W3C(WorldWideWebConSortium,国际互联网标准组织)制定,是互联网的新一代矢量图形标准。凭借着丰富的元素定义、良好的可读性和交互性、完全支持DOM(DocumentObjectModel文档物件模型)、广泛的用户基础等优势,SVG已成为低成本、快速构建矢量地图的有效方式。目前SVG地图多采用文件形式或在数据库中存储,在使用时直接展示出全部地图数据,当面对大量地图数据加载时,往往会出现地图数据获取耗时、图形渲染效率低下,给用户造成较差体验。因此,如何提高地图数据的加载效率,提高用户体验,是本领域技术人员需要解决的问题。
技术实现思路
本专利技术的目的在于提供一种SVG地图数据的加载方法、装置及系统,以实现提高地图数据的加载效率,提高用户体验。为实现上述目的,本专利技术实施例提供了如下技术方案:一种SVG地图数据的加载方法,包括:接收应用层发送的携带基础参数的数据获取请求;利用所述基础参数从数据缓存池中获取第一地图基本信息,并对所述第一地图基本信息中的ViewBow视窗范围属性进行更新,得到第二地图基本信息;利用所述基础参数从数据缓存池中获取第一地图区域类元素信息,并进行元素筛选后得到第二地图区域类元素信息;利用所述基础参数从数据缓存池中获取第一地图POI类元素信息,并进行元素筛选后得到第二地图POI类元素信息;将所述第二地图基本信息、所述第二地图区域类元素信息以及所述第二地图POI类元素信息,按照SVG地图数据结构进行数据组织,生成SVG地图数据;将所述SVG地图数据发送至所述应用层,以便所述应用层根据所述SVG地图数据及所述应用层本地缓存数据进行地图数据的加载。其中,本方案还包括:从多源地图数据中提取目标地图数据,并将所述目标地图数据按照所述SVG地图数据结构更新至SVG地图数据库;将更新后的SVG地图数据库同步更新至所述数据缓存池。其中,所述SVG地图数据结构包括:SVG地图根节点、地图名称节点、地图描述节点、地图边界节点、参考坐标系转换参数节点、平面坐标系转换参数节点、POI图标引用库节点、地图元素信息节点。其中,所述利用所述基础参数从数据缓存池中获取第一地图基本信息,并对所述第一地图基本信息中的ViewBow视窗范围属性进行更新,得到第二地图基本信息,包括:利用所述基础参数中的地图编号,从数据缓存池中获取第一地图基本信息;所述第一地图基本信息包括:SVG地图根节点信息、地图名称节点信息、地图描述节点信息、参考坐标系转换参数节点信息、平面坐标系转换参数节点信息;利用所述基础参数中的地图比例尺、地图中心点及地图范围,计算并更新所述SVG地图根节点信息中的ViewBox视窗范围属性;根据更新后的SVG地图根节点信息,以及所述地图名称节点信息、地图描述节点信息、参考坐标系转换参数节点信息、平面坐标系转换参数节点信息生成第二地图基本信息。其中,所述利用所述基础参数从数据缓存池中获取第一地图区域类元素信息,并进行元素筛选后得到第二地图区域类元素信息,包括:利用所述地图编号,从所述数据缓存池中获取第一地图区域类元素信息;通过射线法判断所述第一地图区域类元素信息中的每个元素是否满足第一筛选条件,将所有满足所述第一筛选条件的元素组成第二地图区域类元素信息;其中,满足所述第一筛选条件的第一目标元素为:所述地图中心点在所述第一目标元素的最大多边形内,或者,所述地图中心点至所述最大多边形的最小欧式距离不大于所述地图中心点至所述地图范围的最大欧式距离。其中,所述利用所述基础参数从数据缓存池中获取第一地图POI类元素信息,并进行元素筛选后得到第二地图POI类元素信息,包括:利用所述地图编号,从所述数据缓存池中获取第一地图POI类元素信息;判断所述第一地图POI类元素信息中的每个元素是否满足第二筛选条件,将所有满足所述第二筛选条件的元素组成第二地图POI类元素信息;其中,满足所述第二筛选条件的第二目标元素为:所述第二目标元素的中心点至所述地图中心点的欧氏距离不大于所述地图中心点至所述地图范围的最大欧式距离。其中,所述接收应用层发送的携带基础参数的数据获取请求,包括:接收负载均衡单元通过加权轮训方式发送的数据获取请求。其中,接收应用层发送的携带基础参数的数据获取请求之前,还包括:应用层判断用户本次操作是否为初次操作;若是,则发送第一数据获取请求;所述第一数据获取请求中携带的基础参数为初始基础参数;若否,则判断用户本次操作是否为缩放/平移操作;若所述用户本次操作为缩放/平移操作,则根据本地缓存数据判断视窗边界处是否满足预定检测规则;若满足,则所述应用层直接根据本地缓存数据进行地图数据的加载;若不满足,则发送第二数据获取请求;所述第二数据获取请求中携带的基础参数为与所述用户本次操作对应的基础参数。其中,所述应用层根据所述SVG地图数据及所述应用层本地缓存数据进行地图数据的加载,包括:应用层将所述SVG地图数据及本地缓存数据取并集,并更新本地存储的地图数据,加载并显示更新后的地图数据。一种SVG地图数据的加载装置,包括:接收模块,用于接收应用层发送的携带基础参数的数据获取请求;第二地图基本信息确定模块,用于利用所述基础参数从数据缓存池中获取第一地图基本信息,并对所述第一地图基本信息中的ViewBow视窗范围属性进行更新,得到第二地图基本信息;第二地图区域类元素信息确定模块,用于利用所述基础参数从数据缓存池中获取第一地图区域类元素信息,并进行元素筛选后得到第二地图区域类元素信息;第二地图POI类元素信息确定模块,用于利用所述基础参数从数据缓存池中获取第一地图POI类元素信息,并进行元素筛选后得到第二地图POI类元素信息;SVG地图数据生成模块,用于将所述第二地图基本信息、所述第二地图区域类元素信息以及所述第二地图POI类元素信息,按照SVG地图数据结构进行数据组织,生成SVG地图数据;SVG地图数据发送模块,用于将所述SVG地图数据发送至所述应用层,以便所述应用层根据所述SVG地图数据及所述应用层本地缓存数据进行地图数据的加载。通过以上方案可知,本专利技术实施例提供的一种SVG地图数据的加载方法,包括:接收应用层发送的携带基础参数的数据获取请求;利用所述基础参数从数据缓存池中获取第一地图基本信息,并对所述第一地图基本信息中的ViewBow视窗范围属性进行更新,得到第二地图基本信息;利用所述基础参数从数据缓存池中获取第一地图区域类元素信息,并进行元素筛选后得到第二地图区域类元素信息;利用所述基础参数从数据缓存池中获取第一地图POI类元素信息,并进行元素筛选后得到第二地图POI类元素信息;将所述第二地图基本信息、所述第二地图区域类元素信息以及所述第二地图POI类元素信息,按照SVG地图数据结本文档来自技高网...
一种SVG地图数据的加载方法、装置及系统

【技术保护点】
一种SVG地图数据的加载方法,其特征在于,包括:接收应用层发送的携带基础参数的数据获取请求;利用所述基础参数从数据缓存池中获取第一地图基本信息,并对所述第一地图基本信息中的ViewBow视窗范围属性进行更新,得到第二地图基本信息;利用所述基础参数从数据缓存池中获取第一地图区域类元素信息,并进行元素筛选后得到第二地图区域类元素信息;利用所述基础参数从数据缓存池中获取第一地图POI类元素信息,并进行元素筛选后得到第二地图POI类元素信息;将所述第二地图基本信息、所述第二地图区域类元素信息以及所述第二地图POI类元素信息,按照SVG地图数据结构进行数据组织,生成SVG地图数据;将所述SVG地图数据发送至所述应用层,以便所述应用层根据所述SVG地图数据及所述应用层本地缓存数据进行地图数据的加载。

【技术特征摘要】
1.一种SVG地图数据的加载方法,其特征在于,包括:接收应用层发送的携带基础参数的数据获取请求;利用所述基础参数从数据缓存池中获取第一地图基本信息,并对所述第一地图基本信息中的ViewBow视窗范围属性进行更新,得到第二地图基本信息;利用所述基础参数从数据缓存池中获取第一地图区域类元素信息,并进行元素筛选后得到第二地图区域类元素信息;利用所述基础参数从数据缓存池中获取第一地图POI类元素信息,并进行元素筛选后得到第二地图POI类元素信息;将所述第二地图基本信息、所述第二地图区域类元素信息以及所述第二地图POI类元素信息,按照SVG地图数据结构进行数据组织,生成SVG地图数据;将所述SVG地图数据发送至所述应用层,以便所述应用层根据所述SVG地图数据及所述应用层本地缓存数据进行地图数据的加载。2.根据权利要求1所述的加载方法,其特征在于,还包括:从多源地图数据中提取目标地图数据,并将所述目标地图数据按照所述SVG地图数据结构更新至SVG地图数据库;将更新后的SVG地图数据库同步更新至所述数据缓存池。3.根据权利要求2所述的加载方法,其特征在于,所述SVG地图数据结构包括:SVG地图根节点、地图名称节点、地图描述节点、地图边界节点、参考坐标系转换参数节点、平面坐标系转换参数节点、POI图标引用库节点、地图元素信息节点。4.根据权利要求1所述的加载方法,其特征在于,所述利用所述基础参数从数据缓存池中获取第一地图基本信息,并对所述第一地图基本信息中的ViewBow视窗范围属性进行更新,得到第二地图基本信息,包括:利用所述基础参数中的地图编号,从数据缓存池中获取第一地图基本信息;所述第一地图基本信息包括:SVG地图根节点信息、地图名称节点信息、地图描述节点信息、参考坐标系转换参数节点信息、平面坐标系转换参数节点信息;利用所述基础参数中的地图比例尺、地图中心点及地图范围,计算并更新所述SVG地图根节点信息中的ViewBox视窗范围属性;根据更新后的SVG地图根节点信息,以及所述地图名称节点信息、地图描述节点信息、参考坐标系转换参数节点信息、平面坐标系转换参数节点信息生成第二地图基本信息。5.根据权利要求4所述的加载方法,其特征在于,所述利用所述基础参数从数据缓存池中获取第一地图区域类元素信息,并进行元素筛选后得到第二地图区域类元素信息,包括:利用所述地图编号,从所述数据缓存池中获取第一地图区域类元素信息;通过射线法判断所述第一地图区域类元素信息中的每个元素是否满足第一筛选条件,将所有满足所述第一筛选条件的元素组成第二地图区域类元素信息;其中,满足所述第一筛选条件的第一目标元素为:所述地图中心点在所述第一目标元素的最大多边形内,或者,所述地图中心点至所述最大多边形的最小欧式距离不大于所述地图中心点...

【专利技术属性】
技术研发人员:李刚朱恺真杨建光曾国玉梁通
申请(专利权)人:机械工业第六设计研究院有限公司
类型:发明
国别省市:河南,41

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

1