一、需求分析
实际工作中,很多公司或个人都需要一些幅面较大的地图,使用PS或AI等绘图工具,在上面标记一些内容,用以分析需求、理清思路、表达问题。当前,国内大的地图供应商有天地图、百度、高德等,都在网上提供电子地图浏览功能,但要实现地图拼接,普通用户也只能束手无策了。如何利用地图商提供的电子地图进行地图拼接出一幅大图,是一个很现实的需求。
二、设计思路
国内最权威的图源为“天地图”。“天地图”是国家测绘地理信息局建设的地理信息综合服务网站。百度百科所述,“天地图”集成了来自国家、省、市(县)各级测绘地理信息部门,以及相关政府部门、企事业单位 、社会团体、公众的地理信息公共服务资源,向各类用户提供权威、标准、统一的在线地理信息综合服务。它是“数字中国”的重要组成部分,是国家地理信息公共服务平台的公众版。
此次我们主要以天地图的拼接为例,制作一个地图拼接工具。主要的思路为:制作一个地图浏览器,增加范围框选工具,对所选范围内的地图进行下载和自动拼接,最终生成大图。
这里有一个坑不得不提一下,就是天地图需要在开发管理平台申请key才能调用其资源,但每个key每天只有10000次的访问,超出配额是常用的事。解决方案有3个,一是通过工商企业或政府机构身份申请key,最大支持到300万和500万次;二是多申请几个key,无法继续下去时换一个key;三是使用国外地图服务商,谷歌已经完全无法访问了,但还有一些网站可以访问,需要注意:国外网站在处理我领土边境问题上有错误,使用时需谨慎。
本文主要包括以下内容:1.主要知识点;2.软件框架;3.图源配置;4.数据交互;5.地图采集与拼接。
三、主要知识点
1.墨卡托投影
1569年,荷兰地图学家墨卡托(Gerhardus Mercator 1512-1594)为了提升航海家的地图使用效果,将地球的球形转换到平面上,提出了墨卡托投影。
墨卡托投影的原理为:设想一个与地轴方向一致的圆柱切于或割于地球,按等角条件将经纬网投影到圆柱面上,将圆柱面展为平面后,得平