1、缘起
openmaptiles
提供了一套OSM数据应用的残缺解决方案,在后面文章如何实现OSM地图本地公布并自定义配图中,咱们具体介绍了如何装置openmaptiles
,并生成了一个阿尔巴尼亚地区的“helloworld”。参照上篇文章的内容,输出上面的命令,就能够生成中国地图。
./quickstart.sh china
- 下面命令,须要急躁期待,我电脑4核8G,用了16个小时左右。最终失去了中国大陆地区,0-7级的矢量瓦片数据。
openmaptiles
次要是从geofabrik网站下载OSM数据,geofabrik在中国地区下载的最小颗粒度是中国大陆和台湾,没有方法按大陆地区的省,或按自定义区域进行下载。
2、问题
- 能不能按自定义区域生成地图?
- 有哪些办法能进步处理速度?
3、剖析
openmaptiles
生成地图分4个步骤:1、数据下载、2、数据入库、3、数据分析、4、生成矢量瓦片。问题一剖析:
- 前三个步骤,只能按整个中国的范畴和所有层级来解决,第4步能够通过管制范畴、层级来实现自定义区域的切图。
问题二剖析:
- 第1步数据下载的工夫取决于网速。
- 第2步数据入库和第3步数据分析的工夫取决于机器性能。
- 第4步生成矢量瓦片的工夫取决于机器性能、切图范畴、切图层级。
- 想要进步处理速度,能够针对下面的因素,隔靴搔痒。
4、生成自定义地区矢量瓦片
- 后面的
./quickstart.sh china
命令蕴含1-4步,后续就不要再执行这个命令了,不然又得重来16个小时。后面曾经提到过,这个命令在第4步,默认会切整个中国范畴0-7级的地图。想要更大层级的地图,只须要另外独自执行第4步就能够。 openmaptiles
生成的矢量瓦片,最大到14级,设置再大也没有用,因为前三步没有对更大级别的数据进行剖析。- 第4步
生成矢量瓦片
的命令,会把上一次的瓦片革除,如果想把两次的后果放在一个文件中,比方想把中国0-7级和北京8-14级的矢量瓦片放在一个.mbtiles文件中,则须要批改配置,让程序不革除上一次的后果。 - 上面以生成全国范畴0-7级地图+北京范畴8-14级地图为例,阐明如何来批改配置。
- 为防止重启电脑后就各种不灵的难堪,咱们从重启电脑后开始。
4.1、启动docker
查看docker是否启动
docker --version
如果没有启动,输出上面命令启动docker。如果有须要,后续能够本人把docker设置为开机自启动。
systemctl start docker
4.2、启动postGIS容器
- 后面的
./quickstart.sh china
命令在执行过程中,下载了4个docker镜像,启动了若干个容器,工具类容器在应用实现后就销毁了,数据类和利用类的容器会保留。(镜像和容器的关系) - 下图红框中的容器就是存放数据的,它外面有个postGIS,咱们须要启动这个容器。
- 进入
openmaptiles
文件夹 启动postGIS容器
make start-db-preloaded
4.3、设置不清理上次的后果
- 关上
Makefile
文件,找到generate-tiles命令,下图红框的地位,就是革除上次后果文件的命令,咱们在这行后面输出#
号,把它正文掉。
4.4、删除默认切图范畴
- 程序默认会用china.bbox中的参数作为切图范畴,咱们把这个文件删掉,后续在.env文件中配置。
china.bbox文件在
data
文件夹中,删除命令:rm -f ./data/china.bbox
4.5、批改切图层级和范畴
- 关上.env文件
- 批改切图的层级
MIN_ZOOM
和MAX_ZOOM
- 批改切图的范畴
BBOX
,格局为:minX,minY,maxX,maxY
4.6、生成瓦片
输出上面命令,生成瓦片
make generate-tiles
- 生成的后果是
tiles.mbtiles
文件,在data
文件夹中
4.7、反复操作
- 反复4.5和4.6步骤,批改层级和范畴,就能把屡次的后果放在一个文件中。
5、总结
openmaptiles
生成地图分4个步骤:1、数据下载、2、数据入库、3、数据分析、4、生成矢量瓦片。- 中国地区生成地图的最小颗粒度是中国大陆和台湾,没有方法按大陆地区的省或按自定义区域进行生成。
- 前三个步骤,只能按整个中国的范畴来解决,第4步能够通过管制生成范畴、生成层级来实现生成自定义区域的地图。
- 前三个步骤只须要执行一次,最初一个步骤能够屡次执行。
- 如果想把屡次生成的矢量瓦片放在一个文件中,能够设置不革除上次生成的后果。
原文地址:http://gisarmory.xyz/blog/index.html?blog=OSMOpenmaptiles
关注《GIS兵器库》公众号, 第一工夫取得更多高质量GIS文章。
本文章采纳 常识共享署名-非商业性应用-雷同形式共享 4.0 国内许可协定 进行许可。欢送转载、应用、从新公布,但务必保留文章署名《GIS兵器库》(蕴含链接: http://gisarmory.xyz/blog/),不得用于商业目标,基于本文批改后的作品务必以雷同的许可公布。