经纬志
首页 / Cesium / API 文档

ConstantProperty

先看结论

永远返回同一个值的属性。给实体赋字面量时 Cesium 自动包成它, isConstant 为 true,渲染端只求值一次。

最后验证 2026-11-03 · CesiumJS 1.121 · 更新 2026-10-28 · 引用本文
new Cesium.ConstantProperty(value)

构造参数

参数类型默认说明
valueanyundefined固定值,可以是 Cartesian3、Color、number、boolean 或对象

成员与方法

成员类型 / 返回说明
isConstantboolean恒为 true
definitionChangedEvent替换 value 时触发
getValue(time, result)any忽略 time,直接返回构造时的值
equals(other)boolean值相等则返回 true

示例

var color = new Cesium.ConstantProperty(Cesium.Color.RED);

console.log(color.isConstant);            // true
console.log(color.getValue(viewer.clock.currentTime)); // Color.RED

// 赋值也可以用 setValue,内部同样触发 definitionChanged
color.setValue(Cesium.Color.BLUE);

// 显式包装:与直接赋字面量等价
viewer.entities.add({
  position: Cesium.Cartesian3.fromDegrees(116.391, 39.907, 0),
  point: {
    pixelSize: 10,
    color: new Cesium.ConstantProperty(Cesium.Color.ORANGE)
  }
});

注意事项

  • setValue 修改的是同一个属性对象,所有引用它的实体一起变色;想独立控制要各自 new。
  • 构造时传入 undefined 后 getValue 返回 undefined,渲染端会当作属性缺失而不是 0。
  • 复杂对象(如数组、颜色)不会深拷贝,外部改了传入对象,属性值也跟着变。
引用本文

经纬志(2026)。《ConstantProperty》。https://www.jingweizhi.com/cesium/api/constant-property.html(访问日期 2026-11-03)。