天地图卫星影像下载

天地图卫星影像下载

一、账号注册及Key获取1.进入天地图官网:天地图API,点击控制台进行账号注册。

2.登录成功后点击控制台,选择应用管理,创建新应用。

配置好你就可以获得对于的Key了,如下图所示

二、地图数据下载GeoJSON1.打开天地图服务中心下载地图数据:天地图 服务中心

2.下载你需要的数据,假设我需要下载两个数据,分别是全国数据和嘉兴市的地图数据。

全国数据的下载,按如下配置好后点击下载数据,等待下载完成即可:

嘉兴市数据的下载,在选择地区选择好省市开始下载即可:

浏览器下载好数据应该如下显示:

三、QGIS软件中添加并显示对应地图数据1.在 QGIS 中添加天地图服务 : 你需要分别添加卫星影像底图和地名注记图层。

(1)在 QGIS 的“浏览器”面板中,找到 XYZ Tiles,右键点击并选择 新建连接...

(2)添加卫星影像底图:在点开新建连接后把Name和URL配置好并点击确定。

卫星影像底图的链接:天地图API

注意:这里的配置都是两两配对的,比如我用的是影像底图:

http://t0.tianditu.gov.cn/img_w/wmts?tk=您的密钥球面墨卡托投影

那么对应使用的影像注记就是:

http://t0.tianditu.gov.cn/cia_w/wmts?tk=您的密钥球面墨卡托投影

当前给的路径并不是正确的,需要完整的路径应该是:

https://t0.tianditu.gov.cn/img\_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=你的密钥

https://t0.tianditu.gov.cn/cia\_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=你的密钥

你只要在对应的“你的密钥”的位置填入你的第一步获得的密钥即可。

接下来,我们回归主体,在下图新建连接里面分别填入(填入的名称Name可以随意):

Name:TDT Satellite

URL:https://t0.tianditu.gov.cn/img\_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=你的密钥

然后就可以点击确定后,双击那个你已经新建的连接,效果如下则说明你成功添加了:

(3)添加影像注记图层(和上述步骤2类似) :在点开新建连接后把Name和URL配置好并点击确定。效果如下:

注意:图层Layers谁在上面优先显示谁,如下图

示例地址:影像: http://t0.tianditu.gov.cn/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=你的密钥影像注记:http://t0.tianditu.gov.cn/DataServer?T=cia_w&x={x}&y={y}&l={z}&tk=你的密钥

2.在 QGIS 中添加地图数据GeoJSON并下载对应离线的地图数据 :(1)将之前下载好的地图数据拖入QGIS软件中,效果如下:

(2)使用插件生成地图瓦片包:1)安装插件:点击菜单栏 插件 -> 管理并安装插件...

在搜索框中输入 QTiles,找到后点击“安装插件”

2)打开插件: 安装成功后,在工具栏上找到它的图标。

3)配置参数,当前我打算下载中国地图瓦片包,具体配置(全国地图级别ZOOM一般是0-10,市级别的用10-15)如下图:

output的参数可以通过点击右侧的更多三个点的按钮,按如下配置:

配置好后单击run等待其下载完毕。

上****面之前说过,地图数据需要成对下载,刚刚下载了影像底图,现在下对应的影像注记,记住layers的图层需要切换为注记的那个连接,然后依次配置好开始下载:

接下来是嘉兴市的影像底图和对应的对应的影像注记,配置如下:

(3)配置地图config.json:

假设你已经下好了大量的地图数据:

我们需要一个json文件来做映射配置,方便地图服务的部署:

例如我的config.json内容如下:

12345678910111213141516171819202122{ "options": { "paths": { "root": "/data", "mbtiles": "/data" } }, "data": { "chinac_img_w_0_10": { "mbtiles": "chinac_img_w_0_10.mbtiles" }, "china_cia_w_0_10": { "mbtiles": "china_cia_w_0_10.mbtiles" }, "jiaxin_img_w_10_15": { "mbtiles": "jiaxin_img_w_10_15.mbtiles" }, "jiaxin_cia_w_10_15": { "mbtiles": "jiaxin_cia_w_10_15.mbtiles" } }}

以上完成后还需要用下文的docker来运行地图服务。

3.在 QGIS 中添加地图数据GeoJSON并下载对应离线的地图数据 :(1)重新拉取 Docker 镜像首先,你需要从打开Docker Desktop后在命令提示符或powershell重新拉取 maptiler/tileserver-gl 镜像(注意:你需要开启vpn连接外网才可以,否则会连接超时)。打开您的终端(Terminal)并执行以下命令:

1docker pull maptiler/tileserver-gl一键获取完整项目代码

(2)查找下载好的镜像名称1docker images一键获取完整项目代码

你会看到一个列表,类似这样:

(3)运行容器现在,你的离线镜像已经成功加载并准备就绪,通过以下命令启动你的地图服务:

把在我本地的地图项目启动起来:将容器的8080端口映射到主机的8083端口:

1docker run --rm -it -p 8083:8080 -v "C:\Users\dddsg\Desktop\mymapTiles":/data maptiler/tileserver-gl:latest一键获取完整项目代码

C:\Users\dddsg\Desktop\mymapTiles是你下载好的瓦片包:

注意:在测试过程中我遇到bug,我执行结果如下:1C:\Users\dddsg>docker run --rm -it -p 8083:8080 -v "C:/Users/dddsg/Desktop/公安项目/地图服务相关/mymapTiles":/data maptiler/tileserver-gl:latestWARNING: The requested image's platform (linux/arm64) does not match the detected host platform (linux/amd64/v3) and no specific platform was requestedStarting tileserver-gl v5.3.1Using specified config file from config.jsonStarting serverListening at http://[::]:8080/SQLITE_READONLY: attempt to write a readonly database一键获取完整项目代码

报错说我的文件夹是只读无法写入,应该是在桌面创建文件夹导致的,你需要把里面的文件移到一个新的你自己创建的文件夹,例如我之后执行:

docker run –rm -it -p 8083:8080 -v “C:/Users/dddsg/Desktop/公安项目/地图服务相关/mymap”:/data maptiler/tileserver-gl:latest

其中C:/Users/dddsg/Desktop/公安项目/地图服务相关/mymap 就是我自己新建的项目,执行后

在浏览器中的地址栏写入:

1http://localhost:8083/一键获取完整项目代码

这是我们映射的端口,效果图如下:

这说明我们本地的项目成功跑起来了,恭喜你完成到这一步,接下来在vscode部署实现地图的展示。

备注注意事项

使用插件下载瓦片之前,一定要先将不相关图层都隐藏掉(取消勾选),否则QGIS中显示的是什么效果,下载下来就是什么效果(比如如果加载了全国的geojson数据,那么下载的切片也会有这个矢量数据,这是不对的)。

下载文字标注切片时,要配置额外的参数。需要将Parameters中的Background transparency数据设置为0,否则默认为255,是不透明的,会遮挡我们的真实影像。下载影像瓦片时则将该项设置为255。

切片发布1npx http-server ./tiles -p 8000

需要有 node 环境,当然使用其他方式也可。

测试调用123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262 OpenLayers example

12.0

相关推荐

微软的官方邮箱地址
火影忍者手游神威卡卡西具体什么时候上线呢
你试过用 Mac 打游戏吗?
“你幸福吗” 《画皮世界》玩家生存状态观察_手机网易网
“外强中干”的祖国让中国人感到绝望
门偏旁的字