CN109241229A - 一种用于互联网地图显示数据的图层复用方法及系统 - Google Patents

一种用于互联网地图显示数据的图层复用方法及系统 Download PDF

Info

Publication number
CN109241229A
CN109241229A CN201811033598.9A CN201811033598A CN109241229A CN 109241229 A CN109241229 A CN 109241229A CN 201811033598 A CN201811033598 A CN 201811033598A CN 109241229 A CN109241229 A CN 109241229A
Authority
CN
China
Prior art keywords
map datum
level
map
display
minzoom
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811033598.9A
Other languages
English (en)
Other versions
CN109241229B (zh
Inventor
程德心
徐科
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Kotei Informatics Co Ltd
Original Assignee
Wuhan Kotei Informatics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan Kotei Informatics Co Ltd filed Critical Wuhan Kotei Informatics Co Ltd
Priority to CN201811033598.9A priority Critical patent/CN109241229B/zh
Publication of CN109241229A publication Critical patent/CN109241229A/zh
Application granted granted Critical
Publication of CN109241229B publication Critical patent/CN109241229B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

本发明涉及一种用于互联网地图显示数据的图层复用方法及系统,通过将目标层级瓦片tile及目标层级瓦片tile范围以内的所有的子瓦片tile汇聚成一个tile,来减少tile数量。因为越到底层,不同层级间数据的差异越小,造成了一定的数据冗余,因此将重复的地理数据元素当做一层存储。通过本发明有效解决现有技术中地图数据的冗余度高、地图数据的读写效率低的问题。

Description

一种用于互联网地图显示数据的图层复用方法及系统
技术领域
本发明涉及电子地图技术领域,具体涉及一种用于互联网地图显示数据的图层复用方法及系统。
背景技术
随着科学技术的发展,电子地图逐渐成为人们生活中不可或缺的辅助工具,电子地图,即数字地图,是利用计算机技术,以数字方式存储和查阅的地图。而支撑地图显示的根本是数据。
我们在浏览器或其他客户端应用程序浏览矢量瓦片地图时,实质是通过向服务器端请求矢量瓦片最后通过浏览器或其他客户端渲染显示出来。而矢量瓦片的切割是按照Google瓦片坐标系(把地球投影后形成的正方形划分为2的level(缩放级别)次幂个地图瓦片,原点在左上角)提前预处理完成。
按照Google瓦片坐标系切割完成后,层级与tile数据的关系如下:
Zoom level Number of tiles
0 1
1 4
2 16
n 2<sup>2n</sup>
12 16 777 216
16 2<sup>32</sup>=4 294 967 296
17 17 179 869 184
18 68 719 476 736
19 274 877 906 944
从上表中可以看出,到了底层瓦片数量呈指数级上升。而目前市面上主流的操作系统在读写海量小文件上都存在性能问题。
同时通过分析地图数据发现,越到底层,不同层级间数据的差异越小,造成了一定的数据冗余。
因此,如何降低地图数据的冗余度、提高地图数据的读写效率,成为一个亟待解决的技术问题。
发明内容
本发明针对现有技术中存在的技术问题,提供一种用于互联网地图显示数据的图层复用方法及系统,以解决现有技术中地图数据的冗余度高、地图数据的读写效率低的问题。
本发明解决上述技术问题的技术方案如下:
一方面,本发明提供一种用于互联网地图显示数据的图层复用方法,包括以下步骤:
设置目标层级,即设置在解析mvt数据时最大的显示层级;
遍历目标层级及层级数大于所述目标层级的地图数据中的所有瓦片内的地图数据元素,获取每个所述地图数据元素的显示层级;
根据所述显示层级,为每个所述地图数据元素设置minzoom和maxzoom属性,并根据minzoom和maxzoom属性进行地图数据元素的显示逻辑控制。
进一步,根据所述显示层级,为每个所述地图数据元素设置minzoom和maxzoom属性,包括:
根据每个所述地图数据元素的显示层级区间,设置minzoom和maxzoom属性,并将所述minzoom和maxzoom属性写入到对应的地图数据元素中;
保留所述地图数据元素在所述最低显示层级minzoom的数据,过滤该地图数据元素在显示层级区间内的其他层级的数据。
进一步,根据minzoom和maxzoom属性进行地图数据元素的显示逻辑控制,包括:
获取当前需要显示的层级;
遍历目标层级地图数据以及层级数大于所述目标层级的地图数据,获取显示区间包含当前需要显示的层级的地图数据元素;
根据获取显示区间包含当前需要显示的层级的地图数据元素的所在瓦片ID拼接地图。
另一方面,本发明提供一种用于互联网地图显示数据的图层复用系统,包括:
目标层级设置模块,用于设置目标层级,即设置在解析mvt数据时最大的显示层级;
第一遍历模块,用于遍历目标层级及层级数大于所述目标层级的地图数据中的所有瓦片内的地图数据元素,获取每个所述地图数据元素的显示层级;
显示控制模块,用于根据所述显示层级,为每个所述地图数据元素设置minzoom和maxzoom属性,并根据minzoom和maxzoom属性进行地图数据元素的显示逻辑控制。
进一步,所述显示控制模块包括:
区间属性设置模块,用于根据每个所述地图数据元素的显示层级区间,设置minzoom和maxzoom属性,并将所述minzoom和maxzoom属性写入到对应的地图数据元素中;
数据重组模块,用于保留所述地图数据元素在所述最低显示层级minzoom的数据,过滤该地图数据元素在显示层级区间内的其他层级的数据。
进一步,所述显示控制模块还包括:
层级获取模块,用于获取当前需要显示的层级;
第二遍历模块,用于遍历目标层级地图数据以及层级数大于所述目标层级的地图数据,获取显示区间包含当前需要显示的层级的地图数据元素;
地图拼接模块,用于根据获取显示区间包含当前需要显示的层级的地图数据元素的所在瓦片ID拼接地图。
本发明的有益效果是:通过本发明显著的减少数据量,同时提高了浏览器或其他客户端在解析数据时的tile读写的速度。
附图说明
图1为本发明方法流程图;
图2为图层复用原理示意图;
图3为本发明系统结构图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,本发明提供一种用于互联网地图显示数据的图层复用方法,包括以下步骤:
设置目标层级,即设置在解析mvt数据时最大的显示层级;
遍历目标层级及层级数大于所述目标层级的地图数据中的所有瓦片内的地图数据元素,获取每个所述地图数据元素的显示层级;
根据所述显示层级,为每个所述地图数据元素设置minzoom和maxzoom属性,并根据minzoom和maxzoom属性进行地图数据元素的显示逻辑控制。
进一步,根据所述显示层级,为每个所述地图数据元素设置minzoom和maxzoom属性,包括:
根据每个所述地图数据元素的显示层级区间,设置minzoom和maxzoom属性,并将所述minzoom和maxzoom属性写入到对应的地图数据元素中;
保留所述地图数据元素在所述最低显示层级mi nzoom的数据,过滤该地图数据元素在显示层级区间内的其他层级的数据。
进一步,根据minzoom和maxzoom属性进行地图数据元素的显示逻辑控制,包括:
获取当前需要显示的层级;
遍历目标层级地图数据以及层级数大于所述目标层级的地图数据,获取显示区间包含当前需要显示的层级的地图数据元素;
根据获取显示区间包含当前需要显示的层级的地图数据元素的所在瓦片ID拼接地图。
如图2所示,16层级时,tile包含abc三个地理数据元素,17层级时包含abcd四个元素,18、19层级包含的元素与17层级相同。若每个瓦片均进行完整存储,就会造成数据极大的冗余,而且浏览器或其他客户端在解析数据时,会每个层级均进行读取解析操作,就会造成处理资源浪费,降低数据的读写效率。
因为越到底层,不同层级间数据的差异越小,造成了一定的数据冗余。如16-19级间,数据差异较小。此时可以将16-19级间出现过的所有元素,当作一层存储。
因此在浏览器或其他客户端程序获取地图数据时,显示16层级时,需要取一次abc三个地理数据元素,显示17层级时,则需要再次取abc三个地理数据元素以及地图数据元素d,而显示18、19层级分别重复提取abcd四个地图数据元素,而在现有的地图数据中,每个层级需要分别进行存储,这就造成了abc三个地图数据元素分别占用了4个数据空间,地图数据元素d占用了3个数据空间,则abcd四个地图数据元素共占用了17个数据空间,这就造成了数据极大的冗余。
利用上述图层复用方法,如图2所示,元素a的minzoom为16,maxzoom为19,当前图层为16或17或18或19时,元素a都会显示出来。而在地图数据中保留元素a所在的最小层级瓦片,即层级为16的瓦片tile。
而元素d的minzoom为17,maxzoom为19,当前图层为16时,元素d不会显示,当前图层为17或18或19时,元素d都会显示出来。
在汇聚文件中保留元素d所在的最小层级瓦片,即层级为17的瓦片tile。
通过上述方法可以有效减少地图数据存储时的数据量,同时提高了浏览器或其他客户端在解析数据时的tile读写的速度。
基于上述方法,本发明还提供一种用于互联网地图显示数据的图层复用系统,如图3所示,包括
目标层级设置模块,用于设置目标层级,即设置在解析mvt数据时最大的显示层级;
第一遍历模块,用于遍历目标层级及层级数大于所述目标层级的地图数据中的所有瓦片内的地图数据元素,获取每个所述地图数据元素的显示层级;
显示控制模块,用于根据所述显示层级,为每个所述地图数据元素设置minzoom和maxzoom属性,并根据minzoom和maxzoom属性进行地图数据元素的显示逻辑控制。
进一步,所述显示控制模块包括:
区间属性设置模块,用于根据每个所述地图数据元素的显示层级区间,设置minzoom和maxzoom属性,并将所述minzoom和maxzoom属性写入到对应的地图数据元素中;
数据重组模块,用于保留所述地图数据元素在所述最低显示层级minzoom的数据,过滤该地图数据元素在显示层级区间内的其他层级的数据。
进一步,所述显示控制模块还包括:
层级获取模块,用于获取当前需要显示的层级;
第二遍历模块,用于遍历目标层级地图数据以及层级数大于所述目标层级的地图数据,获取显示区间包含当前需要显示的层级的地图数据元素;
地图拼接模块,用于根据获取显示区间包含当前需要显示的层级的地图数据元素的所在瓦片ID拼接地图。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种用于互联网地图显示数据的图层复用方法,其特征在于,包括以下步骤:
设置目标层级,即设置在解析mvt数据时最大的显示层级;
遍历目标层级及层级数大于所述目标层级的地图数据中的所有瓦片内的地图数据元素,获取每个所述地图数据元素的显示层级;
根据所述显示层级,为每个所述地图数据元素设置minzoom和maxzoom属性,并根据minzoom和maxzoom属性进行地图数据元素的显示逻辑控制。
2.根据权利要求1所述的方法,其特征在于,根据所述显示层级,为每个所述地图数据元素设置minzoom和maxzoom属性,包括:
根据每个所述地图数据元素的显示层级区间,设置minzoom和maxzoom属性,并将所述minzoom和maxzoom属性写入到对应的地图数据元素中;
保留所述地图数据元素在所述最低显示层级minzoom的数据,过滤该地图数据元素在显示层级区间内的其他层级的数据。
3.根据权利要求2所述的方法,其特征在于,根据minzoom和maxzoom属性进行地图数据元素的显示逻辑控制,包括:
获取当前需要显示的层级;
遍历目标层级地图数据以及层级数大于所述目标层级的地图数据,获取显示区间包含当前需要显示的层级的地图数据元素;
根据获取显示区间包含当前需要显示的层级的地图数据元素的所在瓦片ID拼接地图。
4.一种用于互联网地图显示数据的图层复用系统,其特征在于,包括:
目标层级设置模块,用于设置目标层级,即设置在解析mvt数据时最大的显示层级;
第一遍历模块,用于遍历目标层级及层级数大于所述目标层级的地图数据中的所有瓦片内的地图数据元素,获取每个所述地图数据元素的显示层级;
显示控制模块,用于根据所述显示层级,为每个所述地图数据元素设置minzoom和maxzoom属性,并根据minzoom和maxzoom属性进行地图数据元素的显示逻辑控制。
5.根据权利要求4所述的系统,其特征在于,所述显示控制模块包括:
区间属性设置模块,用于根据每个所述地图数据元素的显示层级区间,设置minzoom和maxzoom属性,并将所述minzoom和maxzoom属性写入到对应的地图数据元素中;
数据重组模块,用于保留所述地图数据元素在所述最低显示层级minzoom的数据,过滤该地图数据元素在显示层级区间内的其他层级的数据。
6.根据权利要求5所述的系统,其特征在于,所述显示控制模块还包括:
层级获取模块,用于获取当前需要显示的层级;
第二遍历模块,用于遍历目标层级地图数据以及层级数大于所述目标层级的地图数据,获取显示区间包含当前需要显示的层级的地图数据元素;
地图拼接模块,用于根据获取显示区间包含当前需要显示的层级的地图数据元素的所在瓦片ID拼接地图。
CN201811033598.9A 2018-09-05 2018-09-05 一种用于互联网地图显示数据的图层复用方法及系统 Active CN109241229B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811033598.9A CN109241229B (zh) 2018-09-05 2018-09-05 一种用于互联网地图显示数据的图层复用方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811033598.9A CN109241229B (zh) 2018-09-05 2018-09-05 一种用于互联网地图显示数据的图层复用方法及系统

Publications (2)

Publication Number Publication Date
CN109241229A true CN109241229A (zh) 2019-01-18
CN109241229B CN109241229B (zh) 2022-01-18

Family

ID=65060701

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811033598.9A Active CN109241229B (zh) 2018-09-05 2018-09-05 一种用于互联网地图显示数据的图层复用方法及系统

Country Status (1)

Country Link
CN (1) CN109241229B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060159357A1 (en) * 2005-01-19 2006-07-20 Megachips Lsi Solutions Inc. Compression encoder, compression encoding method and program
CN102693319A (zh) * 2012-05-31 2012-09-26 北京拓维思科技有限公司 基于金字塔的海量激光雷达点云存储方法
CN104142926A (zh) * 2013-05-06 2014-11-12 北京四维图新科技股份有限公司 一种电子地图的处理方法及装置
US9940743B1 (en) * 2014-03-31 2018-04-10 Amazon Technologies, Inc. Optimizing map generation by reducing redundant tiles

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060159357A1 (en) * 2005-01-19 2006-07-20 Megachips Lsi Solutions Inc. Compression encoder, compression encoding method and program
CN102693319A (zh) * 2012-05-31 2012-09-26 北京拓维思科技有限公司 基于金字塔的海量激光雷达点云存储方法
CN104142926A (zh) * 2013-05-06 2014-11-12 北京四维图新科技股份有限公司 一种电子地图的处理方法及装置
US9940743B1 (en) * 2014-03-31 2018-04-10 Amazon Technologies, Inc. Optimizing map generation by reducing redundant tiles

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
THEOPHANE FOTSO: "流星谷歌地图maxZoom,minZoom和缩放级别", 《HTTPS://WWW.ITDAAN.COM/BLOG/2017/08/09/64FFF71F28FC9C4F92BA783CDAD1D53E.HTML》 *
李杰: "基于矢量瓦片的网络地图服务与共享平台", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Also Published As

Publication number Publication date
CN109241229B (zh) 2022-01-18

Similar Documents

Publication Publication Date Title
CN104376053B (zh) 一种基于海量气象数据的存储与检索方法
CN102930062B (zh) 一种数据库快速水平扩展的方法
Nicoara et al. Hermes: Dynamic Partitioning for Distributed Social Network Graph Databases.
CN104462185B (zh) 一种基于混合结构的数字图书馆云存储系统
US20130218934A1 (en) Method for directory entries split and merge in distributed file system
JP2007086843A (ja) ディスクの回転を制御するシステム
CN105025053A (zh) 基于云存储技术的分布式文件的上传方法及其系统
CN104050248A (zh) 一种文件存储系统及存储方法
CN105989015B (zh) 一种数据库扩容方法和装置以及访问数据库的方法和装置
CN104158858A (zh) 一种访问分布式集群文件系统方法及系统
CN106970929A (zh) 数据导入方法及装置
CN104361065A (zh) 基于Zookeeper的分布式系统的有序序列号生成方法
CN104881466A (zh) 数据分片的处理以及垃圾文件的删除方法和装置
CN105677904A (zh) 基于分布式文件系统的小文件存储方法及装置
CN110427364A (zh) 一种数据处理方法、装置、电子设备及存储介质
US10223379B2 (en) Parallel processing of a keyed index file system
US9594677B2 (en) Computer system, data management method, and recording medium for storing program
CN110502560A (zh) 一种数据库连接参数封装的方法及服务器
CN101483668A (zh) 热点数据的网络存储和访问方法、设备及系统
US10761685B2 (en) Intelligent REST client for operating a data storage system
CN109388615A (zh) 基于Spark的任务处理方法及系统
CN111414422B (zh) 一种数据分布方法、装置、设备和存储介质
CN109241229A (zh) 一种用于互联网地图显示数据的图层复用方法及系统
CN104391947A (zh) 海量gis数据实时处理方法及系统
CN107741968A (zh) 一种文件检索的方法、系统、装置及计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant