BoxGeometryUpdater
是cesiumjs中使用的一种几何实体,用于创建矩形的简单几何形状,它继承自GeometryUpdater
和PrimitiveUpdater
,是这两个类的子类之一。
要创建BoxGeometryUpdater
的实例,请使用以下代码:
const boxGeometryUpdater = new Cesium.BoxGeometryUpdater({
entity: entity,
scene: scene,
fillEnabled: true
});
可以使用以下选项:
entity
:(必需)将要管理几何实体的实体对象。scene
: (必需)当前的场景对象。fillEnabled
: (可选) 指示是否填充形状。默认为true
。BoxGeometryUpdater
类具有以下属性:
该属性指定了这个几何实体所属的实体对象。
boxGeometryUpdater.entity = entity;
该属性指定了当前的场景对象。
boxGeometryUpdater.scene = scene;
该属性指示是否要填充形状。
boxGeometryUpdater.fillEnabled = true;
BoxGeometryUpdater
类具有以下方法:
该方法返回一个包含填充几何实例的数组。
const geometryInstances = boxGeometryUpdater.createFillGeometryInstance(time, appearance);
参数:
time
:(必需)一个JulianDate
,表示实例的时间。appearance
:(必需)一个用于填充该实例的出现样式对象。该方法返回一个包含轮廓几何实例的数组。
const geometryInstances = boxGeometryUpdater.createOutlineGeometryInstance(time, appearance);
参数:
time
:(必需)一个JulianDate
,表示实例的时间。appearance
:(必需)一个用于轮廓该实例的出现样式对象。该方法测试当前平台是否支持此几何实体。
const isSupported = Cesium.BoxGeometryUpdater.isSupported(entity, scene);
参数:
entity
:(必需)将要被测试的实体对象。scene
: (必需)当前的场景对象。返回值:
如果平台支持此几何实体,则返回true
;否则返回false
。
BoxGeometryUpdater
类没有自己的事件,但是它继承了GeometryUpdater
和PrimitiveUpdater
的事件,这些事件在其父类中有定义。
以下示例演示了如何使用BoxGeometryUpdater
类创建一个矩形,并添加到场景中。
const viewer = new Cesium.Viewer('cesiumContainer');
const entity = viewer.entities.add({
name: '矩形实体',
rectangle: {
coordinates: Cesium.Rectangle.fromDegrees(-92.0, 20.0, -89.0, 22.0),
height: 0
}
});
const boxGeometryUpdater = new Cesium.BoxGeometryUpdater({
entity: entity,
scene: viewer.scene,
fillEnabled: true
});
const appearance = new Cesium.MaterialAppearance({
material: Cesium.Material.fromType('Color', { color: Cesium.Color.RED })
});
const geometryInstances = boxGeometryUpdater.createFillGeometryInstance(Cesium.JulianDate.now(), appearance);
viewer.scene.primitives.add(new Cesium.Primitive({
geometryInstances: geometryInstances,
appearance: appearance
}));
有关cesiumjs的其他几何实体的信息,请查看Cesium文档。