cesium polygon 不贴地
时间: 2023-11-24 18:53:19 浏览: 54
要使Cesium的polygon贴地,需要设置heightReference属性为CLAMP_TO_GROUND。以下是一个示例代码,其中一个polygon被设置为贴地,另一个则不是:
```javascript
// 创建viewer
var viewer = new Cesium.Viewer('cesiumContainer');
// 创建两个polygon
viewer.entities.add({
polygon: {
hierarchy: Cesium.Cartesian3.fromDegreesArray([
-115.0, 37.0,
-115.0, 32.0,
-107.0, 33.0,
-102.0, 31.0,
-102.0, 35.0
]),
material: Cesium.Color.RED.withAlpha(0.5),
heightReference: Cesium.HeightReference.NONE // 不贴地
}
});
viewer.entities.add({
polygon: {
hierarchy: Cesium.Cartesian3.fromDegreesArray([
-115.0, 42.0,
-115.0, 47.0,
-107.0, 45.0,
-102.0, 43.0,
-102.0, 39.0
]),
material: Cesium.Color.BLUE.withAlpha(0.5),
heightReference: Cesium.HeightReference.CLAMP_TO_GROUND // 贴地
}
});
```