CesiumJS 中的 PropertyBag 类代表包含一系列属性的对象。每个属性由一个唯一的字符串键和一个关联的 Property 值组成。使用 PropertyBag 可以轻松管理多个属性。
可以使用以下方式创建 PropertyBag:
const bag = new Cesium.PropertyBag();
可以通过以下方式向 PropertyBag 添加属性:
bag.addProperty('myProperty', Cesium.Property.fromValue(42));
这将在 PropertyBag 中添加一个名为 myProperty 的新属性,并将其值设置为 42。
可以通过以下方式访问 PropertyBag 中的属性:
const myPropertyValue = bag.getProperty('myProperty').getValue(time);
这将返回名为 myProperty 的属性的当前值。如果需要访问属性的历史值,则可以使用 getValue 方法的第一个参数 time。
可以通过以下方式更新 PropertyBag 中的属性:
bag.getProperty('myProperty').setValue(43);
这将将名为 myProperty 的属性的值更新为 43。
可以使用 PropertyChangedEvent 监视 PropertyBag 中属性的更改:
const myProperty = bag.getProperty('myProperty');
const subscription = myProperty.definitionChanged.addEventListener(function() {
console.log('Property definition changed.');
});
可以使用以下方式删除 PropertyBag 中的属性:
bag.removeProperty('myProperty');
这将从 PropertyBag 中删除名为 myProperty 的属性。