一、概述
在国内的商用地图中,百度和高德地图是比较用常用并为大家所熟知的,尤其是对于WebGIS开发者来讲,百度API和高德API都是比较常用的项目开发选型平台。但这两个平台都具有一个美中不足的缺点,即卫星影像的高清区域相较谷歌卫星地图而言少很多,且拍摄时间都比较久远,而且没有提供历史卫星影像。
鉴于以上所述原因,这里以百度API为例,提供一种可以将谷歌地球高清卫星影像用百度API进行调用的解决方案。由于百度地图的坐标是在火星坐标(GCJ-02)的基础之上,进行二次加偏的百度BD09专用坐标系,因此需要先将谷歌地球卫星影像下载并投影转换为百度BD09坐标系并切片之后,才可以用百度API进行调用。
这里我们以“古田县”为例,说明如何用万能地图下载器下载谷歌地球高清卫星影像,并将卫星影像投影转换为百度BD09切片的过程。最后,会提供一份百度API调用离线地图并进行二次开发WebGIS系统的案例。
二、下载谷歌卫星地图
下载谷歌卫星影像数据时,可以通过屏幕范围下载、框选矩形范围下载、绘制多边形范围下载、道路沿线下载和导入下载范围下载等多种下载方式。
导入下载范围的文件可以支持Google Earth (*.kml;*.kmz)、Shapefile (*.shp)、AutoCAD (*.dxf;*.dwg)、Mapinfo (*.tab)、GPS 文件 (*.gpx)、GMT 文件 (*.gmt)、Excel (*.csv;*.cls)和文本文件 (*.txt)等多种矢量格式。
这里我们以按行政区划范围下载为例。
在万能地图下载器的右上角行政区划中,选择显示“古田县”行政区划,同时会显示“下载”按钮,点击该按钮可以新建下载任务。
在“新建任务”对话框,在该对话框中可以参考文件大小和打印尺寸等参数选择适合的级别。下载单张大图时,一般情况下选择16到19级
当下载结果最终需要导出为瓦片时,一般是从当前行政区划显示的级别开始选择(这里是第11级),一直选择到第19级(国内19级清晰度效果最佳,19级以上基于19级放大),由于数据量非常大,这里只为了说明如何下载谷歌地球影像并投影转换为BD09瓦片的方法,因此这里以选择到第15级为例。
由于谷歌地球卫星地图的坐标系为WGS84经纬度投影,而导出百度BD09坐标时变形会很大,如果图片上叠加了文字的话会被拉伸变形。因此,这里选择地图下载类型为“影像:仅下载影像”,也就是不在影像上叠加文字。
在“新建任务”对话框中,点击“导出设置”按钮时会显示“导出设置”对话框,在该对话框中可以设置相关导出参数。
在“导出设置”对话框的“导出瓦片”功能选项的中,我们选择瓦片格式为“原始瓦片(API调用)”、文件格式为PNG,坐标投影为“BD09 Web 墨卡托投影”,选择“边界范围裁剪”,背景颜色为“透明”背景。
在下载过程中或下载完成后,都可以查看任务下载完成进度和状态。
谷歌地球高清卫星地图下载完成后,会根据设置的导出参数自动导出坐标系为BD09的百度瓦片格式,并会自动打开下载结果目录。
从导出结果中,可以看到导出的瓦片目录为10到14级而不是我们选择的11到15级,这是因为软件中的级别编号是从1开始,而标准的TMS瓦片命名规则都是从0开始,因此该情况属于正常情况,瓦片的行列号编号规则同理。
通过万能地图下载器下载的谷歌地球卫星影像,导出为BD09瓦片后,可以通过离线百度API调用,调用的显示效果如下图所示。
相关帮助教程,请参阅: