Mapbox地形切片原理浅析

本文介绍了Mapbox如何使用地形切片生成三维地形,包括tif-RGB格式的数据解码方法和离线地形切片的制作流程。通过在NASA下载DEM数据,转换并切片,结合开源工具实现Mapbox地形瓦片的生成。同时,对比了MapboxTerrain-RGB和MapboxTerrain-DEM的区别,并提供了在线和离线调用示例。最后,展示了将地形切片应用于离线地图的实践步骤。

1.Mapbox地形切片简介

Mapbox三维地形使用位移贴图将栅格卫星影像瓦片贴到相应的地形模型上,而mapbox的地形模型通过使用tif-RGB格式的全球数字高程数据切片为png或webp瓦片生成(tif-RGB格式数据比tif-dem轻量些),这些瓦片上每个像素的RGB值通过解码为以米为单位的原始高
程值,然后使用mapbox渲染贴图形成三维地形。
在这里插入图片描述

那么如有生成离线地形需求时,就可以通过在NASA上按经纬度下载相应范围的geotiff格式的dem数据,然后将tif-dem(高程灰度图)转化/编码为tif-RGB格式,然后使用相应的切片工具进行切片(按照相应mapbox相应的规范组织瓦片),而这些处理在github上已经有许多开源的处理工具,这里推荐一个集成了上面所有处理的工具(根据dem数据生成地形切片的工具),感兴趣的化也可以基于GDAL写一个。

对于Terrain-RGB的数据解码:Terrain-RGB 中每个颜色通道为 base-256,而三个颜色通道组成的为16,777,216 个值,这些值可以映射到 0.1 米的高度增量,从而实现三维地形应用所需的垂直精度,因此原来表示高程值是足够的。 mapbox收到图块后, 将需要获取各个像素的红色(R),绿色(G)和蓝色(B)值,然后根据下列公式解码为相应的高度值。
h e i g h t = − 10000 + ( ( R ∗ 256 ∗ 256 + G ∗ 256 + B ) ∗ 0.1 ) height = -10000 + ((R * 256 * 256 + G * 256 + B) * 0.1) height=10000+((R256256+G256+B)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

seeooco

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值