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

垂直夸张系数

小比例尺下地形太平,把 Z 放大几倍才看得出结构。一行缩放矩阵,就能控制夸张程度。

CesiumJS 1.121 · 更新 2026-10-28
源码与运行效果
运行效果

这个示例在做什么

模型的高度在 1 到 3.2 倍之间来回拉伸,平面尺寸保持不变。 右上角显示当前的垂直夸张系数,可以清楚看到「只拉高、不放大」的效果。

垂直夸张常用于地形与地质模型:真实起伏在小比例尺下太平缓,把 Z 方向放大几倍后结构才明显。 实现上就是在 modelMatrix 里右乘一个 Z 方向非等比缩放矩阵。 注意右乘的顺序:先建局部坐标系,再在局部坐标里缩放,模型才会朝「上」拉伸。

关键接口

接口作用
Matrix4.fromScale(Cartesian3)非等比缩放矩阵,只放大 Z 分量
Matrix4.multiply(enu, scale)在地心坐标系里按局部方向缩放
tileset.modelMatrix真实 3D Tiles 的同类做法
postRender逐帧更新缩放系数

可以直接改的地方

位置改什么效果
* 1.1改成 * 4夸张上限更高
new Cartesian3(1, 1, k)改成 (1, k, 1)沿南北方向拉伸,验证方向
0.0009改成 0固定系数,不做动画
boxGlb(26, 20, 20, …)改原始高度基准体量变化

替代说明:官方示例对 ion 地形或模型做垂直夸张。 这里用代码生成的 GLB 演示同一套矩阵操作;换成 tileset 后 对 tileset.modelMatrix 右乘缩放矩阵即可。