CN105279268A - 一种多数据源地图下载方法 - Google Patents
一种多数据源地图下载方法 Download PDFInfo
- Publication number
- CN105279268A CN105279268A CN201510703827.3A CN201510703827A CN105279268A CN 105279268 A CN105279268 A CN 105279268A CN 201510703827 A CN201510703827 A CN 201510703827A CN 105279268 A CN105279268 A CN 105279268A
- Authority
- CN
- China
- Prior art keywords
- download
- map
- resolution
- coordinate
- rank
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了一种多数据源地图下载方法,所述多数据源地图下载方法包括获取下载范围的地图坐标;根据地图坐标计算下载级别对应的像素坐标;根据像素坐标计算图块坐标范围和需要下载切片(图块)的数量;拼接为完整的缓存切片下载地址。同时,提供了一种利用多数据源地图下载方法下载PGIS地图缓存切片时,根据地图坐标计算下载级别对应的像素坐标的计算方法。通过该多数据源地图下载方法逆向解析WebGIS缓存切片地址,下载地图缓存切片到本地,适用于为WebGIS应用开发提供基础地图底图数据及下载方法。
Description
技术领域
本发明涉及GIS技术领域,适用于为WebGIS应用开发提供基础地图底图数据及下载方法。
背景技术
随着地图应用越来越广泛,对于地图数据的需求也越来越多,然而具有准确坐标的数据属于国家机密,个人或者无测绘资质的公司不能随便保留地理数据;另一方面地理数据采购价钱昂贵,对于没有正式获得用户采购的项目,购买数据会增加项目的支出,没有数据,基于地图应用的功能又无法展示。基于此,地图数据成为做地图应用开发的共同瓶颈。而网络地图数据是经过加密的,因此不存在涉密问题,对于没有落地的项目,或者是只需要底图的一些地图应用,网络地图是最好的选择,然而很多情况下,项目应用的地方是不通互联网的,因此无法直接使用互联网在线地图,所以必须想办法把地图下载到本地部署使用。
现有的地图下载器基本都是付费的,仅有免费的下载工具稻哥,存在一些问题,如采用的是数据抓包的形式,比较被动,下载速度慢,只能下载***地图,且经常会有数据缺失问题。
发明内容
针对这些问题,本发明提供了一种多数据源地图下载方法,实现了***在线地图、百度在线地图以及PGIS在线地图的缓存切片下载。采用主动解析计算的方式,下载速度大幅度提升,无数据丢失问题,重点是实现了PGIS在线地图缓存切片的下载。
为实现上述目的,本发明采取如下技术方案:
一种多数据源地图下载方法,包含如下步骤:
(1)获取下载范围的地图坐标;
(2)根据地图坐标计算下载级别对应的像素坐标;
(3)根据像素坐标计算图块坐标范围和需要下载的切片(图块)数量;
(4)拼接为完整的缓存切片下载地址:根据图块坐标范围,通过二重循环,逐次取出图块坐标的行号和列号,拼接成完整的缓存切片下载地址进行下载。
运用多数据源地图下载方法下载地图缓存切片时,对于一般的地图缓存切片下载,例如***在线地图、百度在线地图的缓存切片下载过程,步骤(2)根据地图坐标计算下载级别对应的像素坐标的计算方法为:记地图上某地坐标为(x,y),对应级别的地图分辨率为resolution,像素坐标为(px,py),则px=x/resolution,py=y/resolution;
步骤(3)根据像素坐标计算图块坐标范围和数量的计算方法为:记图块大小为tileSize,图块坐标为(tilex,tiley),则tilex=px/tileSize,tiley=py/tileSize。假定下载范围地图坐标为(x1,y1)~(x2,y2),则下载范围地图坐标对应的图块坐标范围为(tilex1,titley1)~(tilex2,tiley2),图块数量为count=(tilex2-tilex1+1)*(tiley2-tiley1+1)。
所述多数据源地图下载方法可用于下载PGIS地图缓存切片,在下载PGIS地图缓存切片时,步骤(2)根据地图坐标计算下载级别对应像素坐标的计算方法如下:记切片的原点坐标为(originx,originy),地图上某地的球面坐标为(x,y),初始分辨率为initResolution,地图层级偏移为k,下载级别为n,则某个下载级别的分辨率resolution=initResolution/Math.Power(2,k+n)(在开发里面,Math代表是数学计算类,Power是其中的一个方法,Math.Power(2,k+n)表示求2的k+n次方);
像素坐标(Px,Py)计算方法为:
Px=(x-originx)/resolution,
Py=(y-originy)/resolution。
对所述步骤(4)拼接为完整的缓存切片下载地址的过程进行循环检查,先在本地进行检测是否已经下载,若没有下载,则进行下载,若已经完成下载则循环至下一张图片的下载,直至循环结束。本发明采用主动解析计算的方式,大幅度提升了地图缓存切片的下载速度,无数据丢失问题,重点是实现了PGIS在线地图缓存切片的下载。
附图说明
图1为多数据源地图缓存切片下载流程图
图2为PGIS下载界面图
具体实施方式
下面结合附图对本发明作更进一步的说明。
本发明提供了一种多数据源地图缓存切片下载方法。下载前确定要下载的在线地图类型:百度地图、***地图或者PGIS地图(公安警用GIS)。其中,PGIS在线地图运行在公安内网,百度地图或者***地图运行在互联网,需要保证在下载地图所在的网络类型,保持网络畅通。图1所示为多数据源地图缓存切片下载方法的一般流程:
首先,获取下载级别及下载范围。设置好下载级别,将地图浏览到需要下载的初始级别范围,启动任务开始下载。首先就是获取下载的坐标范围。这个范围是一个矩形框,选取矩形框的左下和右上坐标角点(minx,miny),(maxx,maxy)。
优选地,这里的矩形框直接选用当前窗口的显示区域。
其次,计算下载级别对应的像素坐标。根据下载级别及下载地图坐标范围计算像素坐标范围。根据获取的地图坐标范围计算出对应的像素坐标范围(pminx,pminy)~(pmaxx,pmaxy)。其中,pminx=minx/resolution(resolution为对应级别的地图分辨率),相应地,可计算出pminy,pmaxx,pmaxy的值。
多数据源地图下载方法还可用于下载PGIS地图缓存切片,在下载PGIS地图缓存切片时,根据地图坐标计算下载级别对应像素坐标步骤的计算方法如下:记切片的原点坐标为(originx,originy),地图上某地的球面坐标为(x,y),初始分辨率为initResolution,地图层级偏移为k,下载级别为n,则某个下载级别的分辨率resolution=initResolution/Math.Power(2,k+n)(在开发里面,Math代表是数字计算类,Power是其中的一个方法,Math.Power(2,k+n)表示求2的k+n次方);
像素坐标(Px,Py)计算方法为:
Px=(x-originx)/resolution,
Py=(y-originy)/resolution。
再次,根据像素坐标范围计算图块坐标范围及切片数量,图块坐标范围为:(tileminx,tileminy)~(tilemaxx,tilemaxy);切片数量为:count=(tilemaxx-tileminx+1)*(tilemaxy-tileminy+1)。其中,tileminx=pminx/tileSize(假定图块的大小为tileSize),相应地,可计算出tileminy,tilemaxx,tilemaxy的值。
最后,拼接为完整的缓存切片下载地址:根据计算的图块坐标范围,通过二重循环,逐次取出图块坐标的行号和列号,拼接成完整的缓存切片下载地址进行下载。
下载缓存图片前,先在本地进行检测是否已经下载(查漏),若没有下载,则进行下载,若已下载,则循环至下一张,直至循环结束完成该下载级别所有缓存切片的下载。下载的图片按照row_col.png的方式保存在对应的下载级别(n)文件夹下。完成一个下载级别所有的缓存切片下载后,则进入下个下载级别缓存切片的下载,直至完成所有需要的下载级别的缓存切片。
具体地,以下载PGIS地图为例,说明网络在线缓存地图下载的操作和计算过程。这里以下载常州市PGIS在线地图为例,下载方案如下:
运行环境要求:
运行平台:windows系列操作***;
需要安装.NetFramwork4.0;
需要连接网络(说明:其中***地图和百度地图位于互联网,PGIS地图位于公安内网,根据下载地图的类型选择合适的网络)。
步骤:
1.首先配置好需要下载城市的缓存地图访问地址,下载地址:http://IP地址:端口/PGIS_S_TileMap/js/EzMapAPI.js,切换到如图2所示的PGIS下载界面。
2.浏览到需要下载的范围,选择好需要下载的级别和切片保存的位置,本例假定下载级别为从0级到10级。设置好下载参数之后点击“下载”按钮,即可开始下载,下载时计算过程如下:
2.1.获取下载范围,这里获取的地图坐标范围为(118.55078125,30.8232421875)~(121.05078125,32.3759765625);
2.2.根据获取的地图范围和当前的下载级别计算对应像素坐标范围:
2.2.1.计算当前下载级别的地图分辨率:
根据地图分辨率计算公式:
resolution=initResolution/Math.Power(2,k+n),其中initResolution=2,本例中k=10,当前下载级别为0,计算出resolution=0.001953125;
2.2.2.根据地图坐标和分辨率计算像素坐标:
根据计算公式:Px=(x-originx)/resolution,Py=(y-originy)/resolution,本例中originx=0,originy=0,算出得像素坐标范围(60698.0,15781.5)~(61978.0,16576.5);
2.2.3.根据像素坐标计算图块坐标:
根据计算公式:tilex=px/tileSize,tiley=py/tileSize,本例中tileSize=256,算出图块坐标取整后,得图块坐标范围(tilex1,tiley1)~(tilex2,tiley2)值为(237,61)~(242,64)。
然后根据公式:count=(tilex2-tilex1+1)*(tiley2-Tiley1+1)算出在0级时需要下载的图片总张数为count=24
2.2.4.根据图块坐标范围构建二重循环(行循环和列循环),逐一取出行号row和列号col,先去本地下载目录下检查是否已经下载,若已经下载,则循环到下一张切片,若未下载,则拼接下载地址进行下载。直到循环结束,完成本级下载。
2.2.5.进入下一个缩放级别,判断是否已经大于最大下载级别(10),若当前级别小于等于10,重复上述2.2.1~2.2.4过程,若当前级别大于10,则已经完成所有级别缓存切片的下载,结束下载任务。
以上所述仅是本专利的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离主动解析网络地图缓存切片请求地址进行下载这个基本原理,以及PGIS像素坐标计算算法的前提下,还可作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (3)
1.一种多数据源地图下载方法,其特征在于,所述多数据源地图下载方法包含如下步骤:
(1)获取下载范围的地图坐标;
(2)根据地图坐标计算下载级别对应的像素坐标;
(3)根据像素坐标计算图块坐标范围和需要下载的缓存切片(图块)数量;
(4)拼接为完整的缓存切片下载地址:根据图块坐标范围,通过二重循环,逐次取出图块坐标的行号和列号,拼接成完整的缓存切片下载地址进行下载。
2.根据权利要求1所述的多数据源地图下载方法,其特征在于,所述多数据源地图下载方法可用于下载PGIS地图缓存切片,在下载所述PGIS地图缓存切片时,所述步骤(2)根据地图坐标计算下载级别对应像素坐标的计算方法如下:记切片的原点坐标为(originx,originy),地图上某地的球面坐标为(x,y),初始分辨率为initResolution,地图层级偏移为k,下载级别为n,则某个下载级别的分辨率resolution=initResolution/Math.Power(2,k+n);
像素坐标(Px,Py)计算方法为:
Px=(x-originx)/resolution
Py=(y-originy)/resolution。
3.根据权利要求1所述的多数据源地图下载方法,其特征在于,对所述步骤(4)拼接为完整的缓存切片下载地址的过程进行循环检查,先在本地进行检测是否已经下载,若没有下载,则进行下载,若已经完成下载则循环至下一张图片的下载,直至循环结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510703827.3A CN105279268B (zh) | 2015-10-26 | 2015-10-26 | 一种多数据源地图下载方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510703827.3A CN105279268B (zh) | 2015-10-26 | 2015-10-26 | 一种多数据源地图下载方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105279268A true CN105279268A (zh) | 2016-01-27 |
CN105279268B CN105279268B (zh) | 2019-07-16 |
Family
ID=55148282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510703827.3A Active CN105279268B (zh) | 2015-10-26 | 2015-10-26 | 一种多数据源地图下载方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105279268B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126565A (zh) * | 2016-06-17 | 2016-11-16 | 成都新橙北斗智联有限公司 | 一种沿轨迹线生成地图瓦片坐标的方法 |
CN106991153A (zh) * | 2017-03-29 | 2017-07-28 | 武大吉奥信息技术有限公司 | 一种基于Web客户端的第三方地图瓦片服务接入方法及*** |
CN107515929A (zh) * | 2017-08-25 | 2017-12-26 | 北京恒华伟业科技股份有限公司 | 一种地图交互方法及装置 |
CN108510570A (zh) * | 2018-04-09 | 2018-09-07 | 长沙市海图科技有限公司 | 基于标准地图服务的出图方法及装置 |
CN111159322A (zh) * | 2019-12-17 | 2020-05-15 | 广西交通设计集团有限公司 | 一种地图动态切片及服务端缓存的方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101363734A (zh) * | 2007-08-06 | 2009-02-11 | 北京灵图软件技术有限公司 | 地图数据的分块下载方法及地图数据的分块下载装置 |
CN101388043B (zh) * | 2008-09-26 | 2011-12-07 | 北京航空航天大学 | 一种基于小块图片的ogc高性能遥感图像地图服务方法 |
CN101568065A (zh) * | 2009-01-24 | 2009-10-28 | ***通信集团广东有限公司珠海分公司 | 一种智能终端电召***及其电子地图下载方法 |
CN102750180A (zh) * | 2012-05-28 | 2012-10-24 | 中国科学院遥感应用研究所 | 一种二维地图瓦片的多线程显示机制 |
CN103473732B (zh) * | 2013-08-30 | 2016-04-20 | 国家电网公司 | 基于并发控制和双缓存技术的移动gis切片地图展现方法 |
CN103593861A (zh) * | 2013-11-21 | 2014-02-19 | 武大吉奥信息技术有限公司 | 一种面向2.5维地图服务的瓦片加载方法 |
-
2015
- 2015-10-26 CN CN201510703827.3A patent/CN105279268B/zh active Active
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126565A (zh) * | 2016-06-17 | 2016-11-16 | 成都新橙北斗智联有限公司 | 一种沿轨迹线生成地图瓦片坐标的方法 |
CN106126565B (zh) * | 2016-06-17 | 2019-04-02 | 成都新橙北斗智联有限公司 | 一种沿轨迹线生成地图瓦片坐标的方法 |
CN106991153A (zh) * | 2017-03-29 | 2017-07-28 | 武大吉奥信息技术有限公司 | 一种基于Web客户端的第三方地图瓦片服务接入方法及*** |
CN107515929A (zh) * | 2017-08-25 | 2017-12-26 | 北京恒华伟业科技股份有限公司 | 一种地图交互方法及装置 |
CN108510570A (zh) * | 2018-04-09 | 2018-09-07 | 长沙市海图科技有限公司 | 基于标准地图服务的出图方法及装置 |
CN108510570B (zh) * | 2018-04-09 | 2022-03-22 | 长沙市海图科技有限公司 | 基于标准地图服务的出图方法及装置 |
CN111159322A (zh) * | 2019-12-17 | 2020-05-15 | 广西交通设计集团有限公司 | 一种地图动态切片及服务端缓存的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105279268B (zh) | 2019-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105279268A (zh) | 一种多数据源地图下载方法 | |
CN109461199B (zh) | 画面渲染方法和装置、存储介质及电子装置 | |
US9684947B2 (en) | Indicating availability of indoor content on a digital map | |
US9437034B1 (en) | Multiview texturing for three-dimensional models | |
JP6334927B2 (ja) | 付加情報表示装置および付加情報表示プログラム | |
US20140267408A1 (en) | Real world analytics visualization | |
EP3102911A1 (en) | System and method for dynamically optimizing map destination routing performance | |
US9070344B2 (en) | Integrating street view with live video data | |
US20170085656A1 (en) | Automatic absolute orientation and position | |
JP2022050311A (ja) | 車両の車線変更を検出するための方法、装置、電子機器、記憶媒体、路側機、クラウド制御プラットフォーム、及びコンピュータプログラム | |
CN111868786B (zh) | 跨设备监控计算机视觉*** | |
CN105091847A (zh) | 一种测量距离的方法及电子设备 | |
CN108230434B (zh) | 图像纹理的处理方法、装置、存储介质和电子装置 | |
WO2015166318A1 (en) | System and method for dynamically optimizing map tile quality and detail | |
US10295403B2 (en) | Display a virtual object within an augmented reality influenced by a real-world environmental parameter | |
Pryss et al. | The AREA framework for location-based smart mobile augmented reality applications | |
CN113516697B (zh) | 图像配准的方法、装置、电子设备及计算机可读存储介质 | |
CN115578432B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
WO2020066755A1 (ja) | 学習モデル生成装置、地物変化判定装置、学習モデル生成方法、地物変化判定方法、及びコンピュータ読み取り可能な記録媒体 | |
CN113870403B (zh) | 用于图像渲染的信息处理方法及装置 | |
CN112330769B (zh) | 虚线纹理的生成方法、装置及电子设备 | |
CN110634159A (zh) | 一种目标检测方法和装置 | |
CN113989372A (zh) | 标识定位方法、装置、电子设备及计算机可读存储介质 | |
WO2015166319A1 (en) | System and method for dynamically optimizing map scaling animation | |
CN115307652B (zh) | 车辆位姿确定方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PP01 | Preservation of patent right | ||
PP01 | Preservation of patent right |
Effective date of registration: 20220726 Granted publication date: 20190716 |