cesium CLAMP_TO_GROUND CLAMP_TO_3D_TILE
时间: 2025-04-06 16:01:25 浏览: 66
在 Cesium 中,`CLAMP_TO_GROUND` 和 `CLAMP_TO_3D_TILE` 是用于控制实体位置高度模式的两个选项。它们决定了模型、点或其他几何图形如何相对于地形或三维瓦片集进行定位。
---
### **CLAMP_TO_GROUND**
当设置为 `CLAMP_TO_GROUND` 模式时,该对象会被“吸附”到地球表面(即地形)。无论地形的高度变化如何,例如山脉或峡谷等地形起伏,物体都会自动调整其高度以贴合地面。这种模式非常适合需要精确表示地表附着物的情况,比如建筑物基础、车辆或者其他位于地面上的对象。
**示例场景**: 如果你需要放置一辆汽车或者一棵树,并希望它总是站在地上而不会浮空,则可以选择此选项。
```javascript
entity.position = Cartesian3.fromDegrees(longitude, latitude, height);
entity.heightReference = HeightReference.CLAMP_TO_GROUND;
```
---
### **CLAMP_TO_3D_TILE**
相比之下,`CLAMP_TO_3D_TILE` 则会将对象直接绑定至已加载的三维瓦片数据上。这意味着只有当你启用了包含自定义高程信息的 3DTiles 数据源时,这个功能才会生效。如果当前视图内不存在相关的 3D 瓦片内容,那么效果可能会类似于普通悬浮状态下的渲染结果。
对于一些特定的应用程序来说,这种方法可以更好地支持复杂结构化环境里的元素定位问题——例如城市规划中的高楼大厦之间穿插的小型设施等。
```javascript
entity.position = Cartesian3.fromDegrees(longitude, latitude, height);
entity.heightReference = HeightReference.CLAMP_TO_3D_TILE;
```
---
#### 区别总结:
| 特性 | CLAMP_TO_GROUND | CLAMP_TO_3D_TILE |
|--------------------|-------------------------------------|----------------------------------|
| 对象依附目标 | 地球默认地形 | 加载了的具体3D Tiles |
| 是否需额外资源 | 不需要 | 需要有对应的3D Tiles数据 |
| 应用场合 | 自然景观仿真(如森林植被) | 城市精细建模 (如建筑内部细节) |
---
阅读全文
相关推荐

















