CN105279268B - 一种多数据源地图下载方法 - Google Patents

一种多数据源地图下载方法 Download PDF

Info

Publication number
CN105279268B
CN105279268B CN201510703827.3A CN201510703827A CN105279268B CN 105279268 B CN105279268 B CN 105279268B CN 201510703827 A CN201510703827 A CN 201510703827A CN 105279268 B CN105279268 B CN 105279268B
Authority
CN
China
Prior art keywords
map
downloading
coordinate
slice
data source
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.)
Active
Application number
CN201510703827.3A
Other languages
English (en)
Other versions
CN105279268A (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.)
Netposa Technologies Ltd
Original Assignee
Netposa Technologies 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 Netposa Technologies Ltd filed Critical Netposa Technologies Ltd
Priority to CN201510703827.3A priority Critical patent/CN105279268B/zh
Publication of CN105279268A publication Critical patent/CN105279268A/zh
Application granted granted Critical
Publication of CN105279268B publication Critical patent/CN105279268B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical 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应用开发提供基础地图底图数据及下载方法。
背景技术
随着地图应用越来越广泛,对于地图数据的需求也越来越多,然而具有准确坐标的数据属于国家机密,个人或者无测绘资质的公司不能随便保留地理数据;另一方面地理数据采购价钱昂贵,对于没有正式获得用户采购的项目,购买数据会增加项目的支出,没有数据,基于地图应用的功能又无法展示。基于此,地图数据成为做地图应用开发的共同瓶颈。而网络地图数据是经过加密的,因此不存在涉密问题,对于没有落地的项目,或者是只需要底图的一些地图应用,网络地图是最好的选择,然而很多情况下,项目应用的地方是不通互联网的,因此无法直接使用互联网在线地图,所以必须想办法把地图下载到本地部署使用。
现有的地图下载器基本都是付费的,仅有免费的下载工具稻哥,存在一些问题,如采用的是数据抓包的形式,比较被动,下载速度慢,只能下载google地图,且经常会有数据缺失问题。
发明内容
针对这些问题,本发明提供了一种多数据源地图下载方法,实现了google在线地图、百度在线地图以及PGIS在线地图的缓存切片下载。采用主动解析计算的方式,下载速度大幅度提升,无数据丢失问题,重点是实现了PGIS在线地图缓存切片的下载。
为实现上述目的,本发明采取如下技术方案:
一种多数据源地图下载方法,包含如下步骤:
(1)获取下载范围的地图坐标;
(2)根据地图坐标计算下载级别对应的像素坐标;
(3)根据像素坐标计算图块坐标范围和需要下载的切片(图块)数量;
(4)拼接为完整的缓存切片下载地址:根据图块坐标范围,通过二重循环,逐次取出图块坐标的行号和列号,拼接成完整的缓存切片下载地址进行下载。
运用多数据源地图下载方法下载地图缓存切片时,对于一般的地图缓存切片下载,例如google在线地图、百度在线地图的缓存切片下载过程,步骤(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下载界面图
具体实施方式
下面结合附图对本发明作更进一步的说明。
本发明提供了一种多数据源地图缓存切片下载方法。下载前确定要下载的在线地图类型:百度地图、google地图或者PGIS地图(公安警用GIS)。其中,PGIS在线地图运行在公安内网,百度地图或者google地图运行在互联网,需要保证在下载地图所在的网络类型,保持网络畅通。图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系列操作系统;
需要安装.Net Framwork4.0;
需要连接网络(说明:其中google地图和百度地图位于互联网,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 (2)

1.一种多数据源PGIS地图下载方法,其特征在于,所述多数据源PGIS地图下载方法包含如下步骤:
(1)获取下载范围的地图坐标;
(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)根据像素坐标计算图块坐标范围和需要下载的缓存切片数量;
(4)拼接为完整的缓存切片下载地址:根据图块坐标范围,通过二重循环,逐次取出图块坐标的行号和列号,拼接成完整的缓存切片下载地址进行下载。
2.根据权利要求1所述的多数据源地图下载方法,其特征在于,对所述步骤(4)拼接为完整的缓存切片下载地址的过程进行循环检查,先在本地进行检测是否已经下载,若没有下载,则进行下载,若已经完成下载则循环至下一张图片的下载,直至循环结束。
CN201510703827.3A 2015-10-26 2015-10-26 一种多数据源地图下载方法 Active CN105279268B (zh)

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 CN105279268A (zh) 2016-01-27
CN105279268B true 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)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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 北京恒华伟业科技股份有限公司 一种地图交互方法及装置
CN108510570B (zh) * 2018-04-09 2022-03-22 长沙市海图科技有限公司 基于标准地图服务的出图方法及装置
CN111159322B (zh) * 2019-12-17 2020-09-08 广西交通设计集团有限公司 一种地图动态切片及服务端缓存的方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101363734A (zh) * 2007-08-06 2009-02-11 北京灵图软件技术有限公司 地图数据的分块下载方法及地图数据的分块下载装置
CN101388043A (zh) * 2008-09-26 2009-03-18 北京航空航天大学 一种基于小块图片的ogc高性能遥感图像地图服务方法
CN101568065A (zh) * 2009-01-24 2009-10-28 中国移动通信集团广东有限公司珠海分公司 一种智能终端电召系统及其电子地图下载方法
CN102750180A (zh) * 2012-05-28 2012-10-24 中国科学院遥感应用研究所 一种二维地图瓦片的多线程显示机制
CN103473732A (zh) * 2013-08-30 2013-12-25 国家电网公司 基于并发控制和双缓存技术的移动gis切片地图展现方法
CN103593861A (zh) * 2013-11-21 2014-02-19 武大吉奥信息技术有限公司 一种面向2.5维地图服务的瓦片加载方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101363734A (zh) * 2007-08-06 2009-02-11 北京灵图软件技术有限公司 地图数据的分块下载方法及地图数据的分块下载装置
CN101388043A (zh) * 2008-09-26 2009-03-18 北京航空航天大学 一种基于小块图片的ogc高性能遥感图像地图服务方法
CN101568065A (zh) * 2009-01-24 2009-10-28 中国移动通信集团广东有限公司珠海分公司 一种智能终端电召系统及其电子地图下载方法
CN102750180A (zh) * 2012-05-28 2012-10-24 中国科学院遥感应用研究所 一种二维地图瓦片的多线程显示机制
CN103473732A (zh) * 2013-08-30 2013-12-25 国家电网公司 基于并发控制和双缓存技术的移动gis切片地图展现方法
CN103593861A (zh) * 2013-11-21 2014-02-19 武大吉奥信息技术有限公司 一种面向2.5维地图服务的瓦片加载方法

Also Published As

Publication number Publication date
CN105279268A (zh) 2016-01-27

Similar Documents

Publication Publication Date Title
CN105279268B (zh) 一种多数据源地图下载方法
KR102001646B1 (ko) 이동 디바이스 생성 이벤트 분석에 기초한 맵 타일 데이터 선-인출 방법
KR102344012B1 (ko) 관심 지점을 표시하기 위한 방법 및 장치
US20190102798A1 (en) Systems and methods to create a geographic heatmap
US9052199B2 (en) System and method for indicating user location and facing direction on a digital map
JP6266656B2 (ja) 画像をサイズ変更するためのシステム及び方法
JP2019514123A (ja) 地理的領域におけるコンテナ内に格納された量の遠隔決定
KR101759415B1 (ko) 실제 세계 분석론 시각화
Schmidt et al. Web mapping services: development and trends
US20150062114A1 (en) Displaying textual information related to geolocated images
KR20150130558A (ko) 상황 로컬 이미지 인식 데이터세트
CN112069285A (zh) 基于三维高精地图切片的地图生成方法、装置及电子设备
CN107656962A (zh) 电子地图中的全景显示方法、服务器及计算机可读介质
US11798181B2 (en) Method and system for location detection of photographs using topographic techniques
US20150019675A1 (en) Caching geographic data according to server-specified policy
Pryss et al. The AREA framework for location-based smart mobile augmented reality applications
CN113516697B (zh) 图像配准的方法、装置、电子设备及计算机可读存储介质
CN108447023A (zh) 图像处理方法、装置及电子设备
Zhu et al. A fast image stitching algorithm via multiple-constraint corner matching
CN103678470B (zh) 一种显示选定区域经济数据的方法和系统
CN114040129B (zh) 视频生成方法、装置、设备及存储介质
CN107248138B (zh) 虚拟现实环境中的人类视觉显著性预测方法
US10108882B1 (en) Method to post and access information onto a map through pictures
CN115049537A (zh) 图像处理方法、装置、电子设备及存储介质
KR20230152830A (ko) 축척 링 변형

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

Effective date of registration: 20220726

Granted publication date: 20190716

PP01 Preservation of patent right