1. 概述

我们之前为大家分享过在三维地球开源平台离线加载卫星影像的方法,主要包括基于桌面端的OsgEarth开源三维地球和基于Web端的Cesium开源三维地球等平台的局域网离线影像加载。

另外,也为大家分享过在二维开源平台离线加载卫星影像的方法,主要包括基于OpenLayers的内网WebGIS离线部署、基于MapBox的内网WebGIS离线部署和基于 GoogleMap 离线 API 在内网中加载离线卫星地图等具体操作方法。

但由于有客户咨询过如何在QGIS中离线加载谷歌卫星影像的问题,因此觉得有必要再针对这个问题为大家作一下分享。

那么什么是QGIS呢? QGIS原称为Quantum GIS,是一个用户界面友好的开源桌面端软件,支持数据的可视化、管理、编辑、分析以及印刷地图的制作,并支持多种矢量、栅格与数据库格式及功能。

你也可以简单粗暴地把它理解为是一个开源且免费的ArcGIS,因为它和ArcGIS一样都有着很多非常强大的GIS功能。

2. 准备工作

在开始之前,需要先准备离线数据发布软件、离线卫星影像示例数据、QGIS安装包和本机IP地址等。

地图发布软件:需要在内网发布离线卫星影像,请确保地图发布服务中间件版本为4.0.6以上,如果低于该版本,请通过私信并回复"中间件"免费获取最新版本安装包,也可以直接在水经注官方网站下载。

离线示例数据:本文提供的离线示例数据包括墨卡托投影和WGS84投影的卫星影像与地名标签数据,由于这里主要是为了进行功能性演示,因此只提供了前10级影像数据。

卫星影像示例数据

在安装软件之前,请从私信“示例数据”获取地址,下载示例数据。

QGIS软件安装包:QGIS安装包可以从QGIS官方网站下载,也可以通过私信回复"QGIS"即可获取百度网盘下载地址,这里提供的是64位版本。

本机IP地址:由于会用到本机IP作为访问地址,可以通过在DOS窗口中运行"IPConfig"命令或其它方式获取本机IP地址以备用,如下图所示。

获取本机IP地址

3. 设置QGIS界面为中文

QGIS的的默认用户界面是英文版本的,安装启动之后如下图所示。

QGIS界面

如果不习惯使用英文界面,可以设置为中文界面。

首先,点击"SettingsOptions..."菜单,如下图所示。

选择菜单

然后,在显示的"Options-General"对话框中,点击"General"选项。

配置对话框

最后,勾选"Override System Locale"复选框,并在"User interface translation"中选择"简体中文"即可,如下图所示。

配置中文界面

保存语言配置后,重新启动软件,就可以看到软件是中文版的了,如下图所示。

中文界面

4. 墨卡托投影卫星影像离线发布

软件的安装方法,请参阅"全球卫星影像离线发布神器《水经注地图发布服务中间件4.0》正式发布"一文。

由于这里只演示卫星地图的调用方法,因此这里暂不需要发布高程DEM数据。

但需要注意的是发布的卫星影像和设置的投影务必要保证统一,且端口号没有被其它程序占用,如下图所示。

安装配置

安装完成后,会显示如下图所示信息。

安装完成

打开Windows任务管理器,如果WeServer服务的状态显示"正在运行",则说明中间件服务安装成功并已经正常运行,如下图所示。

服务运行正常

确保服务运行正确后,可以在浏览器中打开"Z=7/Y=48/X=105"的标签瓦片地址检验发布成果,示例地址如下所示:

http://192.168.0.10:8519/WeServer/wmts/1.0.0/acimage/default/mercator/7/48/105.jpg

注:上述URL地址中的IP和端口号需要与WeServer中的配置保持一致。

如果无异常,则将会显示北京位置区域的卫星影像瓦片,如下图所示。

卫星影像瓦片

同样地,也可以通过在本机浏览器中打开"Z=7/Y=48/X=105"的地名标签瓦片地址检验发布成果,示例地址如下所示:

http://192.168.0.10:8519/WeServer/wmts/1.0.0/aclabel/default/mercator/7/48/105.png

注:上述URL地址中的IP和端口号需要与WeServer中的配置保持一致。

如果无异常,则将会显示地名标签结果,如下图所示。

地名标签瓦片

在微图中打开瓦片网格显示功能,我们可以看到上文中的瓦片"Z=7/Y=48/X=105",在微图中对应的是"Z=8/X=49/Y=106"瓦片。

也就是说,微图软件中的瓦片编号是从1开始的,因此行列号都会比WeServer大1,且它的编号显示顺序为ZXY,而WeServer发布时的顺序为ZYX,如果你了解它们的区别,会有助于你在调用WeServer发布的瓦片时进行调试。

微图中的瓦片编号

5. 在QGIS中离线加载墨卡托卫星影像地图

上文已经说明了如何通过WeServer在内网发布离线的卫星影像与检测发布结果的方法,现在我们来讲一下在QGIS中离线加载墨卡托卫星影像地图的方法。

请确保通过上文中说明的方法,已经成功离线发布了墨卡托卫星影像。

然后,在QGIS中新建"XYZ Tiles"地图数据源连接,操作如下图所示。

新建连接

在显示的地图对话框中,输入任意图层名称,网址则务必需要输入正确的瓦片发布地址:

http://192.168.0.10:8519/WeServer/wmts/1.0.0/acimage/default/mercator/{z}/{y}/{x}.jpg

配置影像瓦片地址

用上述同样的方法,添加地名标签瓦片地址:

http://192.168.0.10:8519/WeServer/wmts/1.0.0/aclabel/default/mercator/7/48/105.png

配置瓦片地址

双击添加后的图层名称,会加载显示WeServer发布的墨卡托卫星影像,如下图所示。

墨卡托影像离线加载结果

6. WGS84经纬度直投的卫星影像离线发布

由于之前发布的是墨卡托卫星影像,因此发布WGS84卫星影像时需要重新对WeServer的数据源与坐标投影进行配置。

设置数据源与坐标投影除了可以在安装界面中配置外,还可以通过修改配置文件的方式设置。

在WeServer安装路径中,有一个用于配置WeServer参数的"WeServerConfig.ini"文件,如下图所示。

WeServer配置文件

在配置文件中,重新设置卫星影像路径和地名标签路径,然后将投影设置为"WGS_84",即经纬度投影,如下图所示。

设置WGS84投影参数

在"WeServerConfig.ini"文件中完成相关参数配置并保存后,双击"WeServer.exe"文件,会重新启动服务并使配置参数生效。

配置参数生效

在确保服务运行的情况下,可以在浏览器中打开"Z=7/Y=35/X=210"的标签瓦片地址检验发布成果,示例地址如下所示:

http://192.168.0.10:8519/WeServer/wmts/1.0.0/acimage/default/wgs84/7/35/210.jpg

注:上述URL地址中的IP和端口号需要与WeServer中的配置保持一致。

如果无异常,则将会显示北京位置区域的卫星影像瓦片,如下图所示。

卫星影像瓦片

同样地,也可以通过在本机浏览器中打开"Z=7/Y=35/X=210"的地名标签瓦片地址检验发布成果,示例地址如下所示:

http://192.168.0.10:8519/WeServer/wmts/1.0.0/aclabel/default/wgs84/7/35/210.png

注:上述URL地址中的IP和端口号需要与WeServer中的配置保持一致。

如果无异常,则将会显示地名标签结果,如下图所示。

地名标签瓦片

在微图中打开瓦片网格显示功能,我们可以看到上文中的瓦片"Z=7/Y=35/X=210",在微图中对应的是"Z=9/X=211/Y=36"瓦片。

也就是说,微图软件中的瓦片的层级比WeServer发布的层级大2,行列号比WeServer大1,且它的编号显示顺序为ZXY,而WeServer发布时的顺序为ZYX,如果你了解它们的区别,会有助于你在调用WeServer发布的瓦片时进行调试。

微图中的瓦片编号

7. 在QGIS中加载WGS84离线卫星影像

理论上如果QGIS中的"XYZ Tiles"瓦片加载功能支持WGS84坐标系的话,同样地可以通过瓦片地址进行加载。

WGS84卫星影像瓦片发布地址为:

http://192.168.0.10:8519/WeServer/wmts/1.0.0/acimage/default/wgs84/{z}/{y}/{x}.jpg

WGS84地名标签瓦片发布地址为:

http://192.168.0.10:8519/WeServer/wmts/1.0.0/aclabel/default/wgs84/{z}/{y}/{x}.png

但经过研究,QGIS的"XYZ Tiles"功能好像并不支持WGS84的瓦片加载,但并未作过于深入的研究。

不过由于WeServer发布的离线瓦片支持WMTS服务,因此我们可以在QGIS中新建"WMS/WMTS"地图服务链接,如下图所示。

新建WMS/WMTS服务

在显示的新建链接对话框中,名称可以任意输入,网址需要输入WeServer发布的WMTS瓦片地图服务地址:

http://192.168.0.10:8519/WeServer/wmts?Service=WMTS&Request=GetCapabilities

新建WMTS瓦片服务

地图连接添加成功后,通过双击"acimage"和"aclabel"图层,即可加载显示WeServer在内网发布WGS84卫星影像地图与地名标签,如下图所示。

WGS84卫星影像加载效果

这里顺便提一下,为什么通过加载上述网址就可以加载WeServer发布的瓦片地图呢?

那是因为通过访问以上网址,WeServer会向请求端返回一个地图发布瓦片相关的信息,包括发布的数据坐标范围、瓦片地址的格式、瓦片的坐标投影和每一个图层的分辨率等详细信息。

在浏览器中打开上述的网址,可以查看地图瓦片的描述信息,如下图为墨卡托投影瓦片发布的相关参数。

墨卡托瓦片发布参数

下图为发布WGS84瓦片的相关参数,同样包括了数据坐标范围、瓦片地址的格式、瓦片的坐标投影和每一个图层的分辨率等。

WGS84瓦片发布参数

也就是说,凡是支持加载WMTS的GIS平台,都可以通过上述方式加载WeServer在内网离线发布的卫星影像地图数据。

8. 总结

以上就是基于 QGIS 在内网中离线加载卫星地图方法的全部说明,主要包括了墨卡托与WGS84卫星影像的发布、发布瓦片地址的有效性检测和在QGIS中进行加载显示等内容。

最后,由于本文中提供的数据为示例数据,旨在说明地图发布服务中间件的内网离线发布功能,因此卫星影像数据和地名标签都仅仅提供全球前10级数据。

如果需要发布高清卫星影像数据,你可以通过关注私信回复"免费数据",领取一个省的高清卫星影像数据,然后更新到对应的数据目录即可!

web高德地图怎么加载离线地图_基于 QGIS 在内网中离线加载卫星地图的方法相关推荐

  1. 基于 QGIS 在内网中离线加载卫星地图的方法

    1. 概述 我们之前为大家分享过在三维地球开源平台离线加载卫星影像的方法,主要包括基于桌面端的OsgEarth开源三维地球和基于Web端的Cesium开源三维地球等平台的局域网离线影像加载. 另外,也 ...

  2. 基于 GoogleMap 离线 API 源码在内网中加载卫星地图的方法

    1. 概述 我们之前为大家分享过在三维地球开源平台离线加载卫星影像的方法,主要包括基于桌面端的OsgEarth开源三维地球和基于Web端的Cesium开源三维地球等平台的局域网离线加载. 另外,也为大 ...

  3. 在CAD中插入谷歌地球卫星地图

    本文主要介绍如何在CAD中插入谷歌地球卫星地图,作为参照光栅图像.谷歌地球卫星地图使用"迈高图-地图数据下载器"(以下简称:迈高图)下载.迈高图会给出相关插入参数(插入点和缩放比例 ...

  4. web高德maker动画_Web Maker,一种基于浏览器的离线CodePen替代品

    web高德maker动画 In this article, Kushagra Gour introduces Web Maker, a browser extension he created for ...

  5. 请简述静态地图与动态地图之间的区别,如何在前端页面中选择使用哪种地图?...

    静态地图和动态地图的区别在于数据更新方式不同.静态地图的数据是预先绘制好的,不随时间变化而改变,而动态地图的数据是实时获取的,随时间变化而改变. 在前端页面中选择使用哪种地图,取决于应用场景需求.如果 ...

  6. matlab生成s加减速曲线,一种基于移动平均算法的S曲线加减速控制方法与流程

    本发明属于运动控制领域,具体涉及一种基于移动平均算法的S曲线加减速控制方法. 背景技术: 加减速技术是数控系统的关键技术之一,算法的优劣直接决定着加工效率和加工精度.一种优秀的加减速算法既可以保证机床 ...

  7. three.js加载3d模型_基于WebGL的3D技术在网页中的运用 ThingJS 前端开发

    Three.js.ThingJS这些引擎库可以加载3D制作软件的模型,大幅度提高了制作效率,改变WebGL开发困难的局面,让Web开发者享受便捷的3D开发服务.三者的难度对比如下: ThingJS(框 ...

  8. 网站加载速度 优化_您肯定要优化网站的加载速度。 这是如何做。

    网站加载速度 优化 Do you remember this iconic scene from a very famous Star Wars Parody? 您还记得著名的<星球大战> ...

  9. eui加载时间长_面试官:为什么 HashMap 的加载因子是0.75?

    有很多东西之前在学的时候没怎么注意,笔者也是在重温HashMap的时候发现有很多可以去细究的问题,最终是会回归于数学的,如HashMap的加载因子为什么是0.75? 本文主要对以下内容进行介绍: 为什 ...

最新文章

  1. java process started_Java HistoricProcessInstanceQuery.startedBy方法代碼示例
  2. 第四次作业 结对编程-黄金点游戏
  3. 安卓手机测评_安卓手机8G运存,比不上iPhone 2G?终于知道原因了!
  4. dataset的去重计数 g2_向工程渣土运输车辆计数 漏洞损失说“不”
  5. 谷歌大改Transformer注意力,速度大涨,显存大降!
  6. 数学思想 —— 对称性思维
  7. 为什么OpenStack与其他开源项目不同
  8. 测量怎么显示坐标_测量员必须掌握的——全站仪坐标放样
  9. git代码库迁移保留commit历史_如何把git仓库(包含所有提交历史)迁移到gitlab
  10. 人脸对齐(十六)--DenseFA
  11. 各种排序算法稳定性的探讨
  12. 通过Keepalived实现Redis Failover自动故障切换
  13. R循环有两个_R语言从入门到精通:Day6
  14. python参考手册下载_python学习手册下载|
  15. 工控c语言培训,[转载]最完整的工控培训、PLC培训教程大全
  16. 简账(开源记账软件)-数据库设计
  17. 基于node搭建前端服务器,nodejs做微信小程序后端
  18. JS复习笔记之造new轮子
  19. VulnHub靶场系列:Flick
  20. 【C++学习笔记】复合类型和const限定符

热门文章

  1. 软件工程直招士官生_如何看待今年首次面向普通高校毕业生直招士官?是毕业生的一个好选择吗?...
  2. 相量法matlab仿真编程,电力系统的MATLAB/SIMULINK仿真与应用 王晶,翁国庆,张有兵著 西安电子科技大学出版社 9787560620...
  3. 服务器中”系统平均负载 Load average“含义学习
  4. 超级lrc播放器——全平台上的lrc歌词播放器
  5. DAMA数据治理学习笔记-大数据和数据科学
  6. 信息收集8——masscan,nbtscan
  7. galaxy s4刷机相关说明
  8. 奇迹mu GM命令管理器修改
  9. Ubuntu中的Load/Unload Cycle Count问题及解决方案
  10. TF-IDF和word2vec原理