经纬志
首页 / MapLibre / 使用示例

地形与晕渲

高程瓦片让地面真正起伏,晕渲图层在没有影像时也能读出山谷走向。 夸张系数与晕渲强度分开控制,便于比较真实比例与视觉表现。

MapLibre GL JS 4.x · 更新 2026-10-28
源码与运行效果
运行效果

说明

raster-dem 源与普通栅格源共用瓦片字段,区别是要声明 encoding。示例用的 AWS terrarium 数据必须以 terrarium 解码,写成 mapbox 会得到整体压低的高程。

setTerrain 打开地形,setTerrain(null) 关闭。 关闭时同时隐藏晕渲图层,否则高程仍被采样,性能开销不会下降。

配置取值说明
encodingterrarium必须与瓦片编码一致
tileSize256高程瓦片的像素边长
maxzoom12高程数据通常到此为止
exaggeration1.0–2.4垂直夸张,1 为真实比例
hillshade-exaggeration0.5晕渲明暗强度

夸张系数调过 2 后山体看起来像沙盘,适合演示构造线,不适合量测。 需要量测高度时保持在 1,并记住地形只影响视觉,不改变坐标与距离计算。

地形开启后低缩放画面边缘容易被地平线裁切,增大 padding 或降低俯仰角可以缓解。高程瓦片请求失败时地形静默不生效,底图仍可操作。