数据获取
OpenStreetMap
栅格瓦片爬取
无人机航拍
数据处理
OSM 切片 MBTiles
tilemaker: https://github.com/systemed/tilemaker
1
|
docker run -it --rm -v $(pwd):/data ghcr.io/systemed/tilemaker:master /data/monaco-latest.osm.pbf --output /data/monaco-latest.mbtiles
|
完整的tilemaker命令如下:
1
2
3
4
|
tilemaker --input oxfordshire.osm.pbf \
--output oxfordshire.mbtiles \
--config resources/config-openmaptiles.json \
--process resources/process-openmaptiles.lua
|
其中配置文件 config-openmaptiles.json 的内容(详细配置讲解见:https://github.com/systemed/tilemaker/blob/master/docs/CONFIGURATION.md)如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
{
"layers": {
"roads": { "minzoom": 12, "maxzoom": 14 },
"buildings": { "minzoom": 14, "maxzoom": 14 },
"pois": { "minzoom": 13, "maxzoom": 14 }
},
"settings": {
"minzoom": 12,
"maxzoom": 14,
"basezoom": 14,
"include_ids": false,
"compress": "gzip",
"name": "Tilemaker example",
"version": "0.1",
"description": "Sample vector tiles for tilemaker"
}
}
|
PG 切 MBTiles
1
2
3
4
5
6
|
# 将 PG 的数据切成一个 MBtiles
ogr2ogr -dsco MINZOOM=0 -dsco MAXZOOM=15 -f "MBTiles" filename.pmtiles "PG:host=my_host port=my_port dbname=my_database user=my_user password=my_password schemas=my_schema"
# 查看命令支持的数据格式
ogr2ogr.exe --formats
|
栅格切 MBTiles
MBTiles 转 PMTiles
PMTile 相较于 MBtile,高度压缩,能有效减少数据存储空间,降低网络传输成本,更适合大规模数据发布预览。
PMTile预览:https://pmtiles.io/
1
2
3
4
5
|
# 利用执行文件进行数据转换
pmtiles convert INPUT.mbtiles OUTPUT.pmtiles
# 利用 docker 进行数据转换
docker run -v $(pwd):/data --rm protomaps/go-pmtiles convert /data/INPUT.mbtiles /data/OUTPUT.pmtiles
|
pmtiles
三维切片3dTiles
数据存储
PostGIS
数据发布或代理
Martin
Nginx
地图可视化
MapBox
DeckGL
地图样式编辑
maputnik