使用 tilemaker 生成地图服务

1 篇文章 0 订阅

前言

OpenStreetmap 是免费并且开源并提供开源工具,教程使用 tilemaker 从openstreetmap 生成地图mbtiles,全球需要大量存储 (60G)。
openstreetmap 数据:

openstreetmap 工具:

前端:

将 openstreetmap 矢量添加到地图所需的步骤如下:

  • 下载全球或州PBF数据
  • 指定区域抽取openstreetmap 数据导出
  • 从区域 openstreetmap 提取生成图块
  • 安装 mbtileserver 托管图块
  • 使用 mbview 预览实例数据

注意事项:创建全球数据处理估计需要256+运行内存。

数据源

全球矢量数据

OpenStreetMap:https://planet.openstreetmap.org/pbf/planet-latest.osm.pbf

各个州拆分矢量数据

geofabrik:https://download.geofabrik.de/

全球矢量历史数据

https://planet.openstreetmap.org/planet/

指定区域导出PBF数据

  • 确保已经有PFB全球数据
  • osmium-tool已安装成功

osmium-tool

github: https://github.com/osmcode/osmium-tool

安装

源码编译安装

根据README教程安装依赖

apt安装
sudo apt-get update
sudo apt install osmctools
sudo apt install osmium-tool

使用

通过GeoFabrik获取国家或者地区的范围。
在 Ubuntu 上,使用 osmium 工具:
创建区域导出

osmium extract --bbox=2.68,50.72,7.55,54.12 --set-bounds --strategy=smart europe-latest.osm.pbf  --output netherlands.osm.pbf

执行完成后会在根目录生成netherlands.osm.pbf文件
注意事项:
osmium提供了执行范围的数据块提取,也可以设置指定Extract strategies(simple、complete_ways、smart)策略,还可以指定标签过滤tags比如提取火车(铁路、高铁、轻轨、地铁)

osmium tags-filter rome.osm.pbf w/highway \ -o highways-in-rome.osm.pbf

具体介绍可以参考:https://osmcode.org/osmium-tool/manual.html

OSM生成mbtiles图块

下载并解压:

wget [https://www.kleunen.nl/tilemaker-tutorial/tilemaker.tar.gz](https://www.kleunen.nl/tilemaker-tutorial/tilemaker.tar.gz) tar xvzf tilemaker.tar.gz

tilemaker生成mbtiles图块:

tilemaker--inputnetherlands.osm.pbf--outputnetherlands.mbtiles--processresources/process-openmaptiles.lua--configresources/config-openmaptiles.json

注意事项:

process-openmaptiles.lua:
lua脚本主要提供PFB属性数据,如果自己可以看懂lua脚本可以自行更改
config-openmaptiles.json
config文件定义了生成mbtiles基本信息,并提供了设置图层显示等级
具体介绍可以参考:[https://github.com/systemed/tilemaker/blob/master/docs/CONFIGURATION.md](https://github.com/systemed/tilemaker/blob/master/docs/CONFIGURATION.md)

转换完成后tilemaker会提示:

Filled the tileset **with** good things at netherlands.mbtiles

mbview 数据预览工具

下载

wget [https://github.com/mapbox/mbview](https://github.com/mapbox/mbview)

安装依赖

npm install -g mbview

添加环境变量

Windows直接在计算机属性中添加
linux

export MAPBOX_ACCESS_TOKEN='pk.eyJ1Ijoic3R1ZGVudGRzeCIsImEiOiJjam0zZHZidXQwcWoxM3BtdTZzcmlmazBtIn0.FcZZeda4sKBrAdJfdBTFZQ'

启动服务

mbview netherlands.mbtiles

效果预览

效果预览

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值