PlaneGraphics是CesiumJS中用于绘制平面(矩形)的图形对象。可以通过多种方式对平面进行设置和修改,实现不同样式的矩形绘制。
// 创建平面
var plane = viewer.entities.add({
position: Cesium.Cartesian3.fromDegrees(-75.59777, 40.03883),
plane: {
dimensions: new Cesium.Cartesian2(400000.0, 300000.0),
material: Cesium.Color.RED.withAlpha(0.5)
}
});
上面的示例代码中,创建了一个中心坐标为(-75.59777, 40.03883)的平面,宽400000米,高300000米,填充颜色为半透明的红色。
平面是否可见,类型为布尔值,默认为true。
平面尺寸的二维向量,类型为Cartesian2,默认为(0, 0),表示不显示。
平面的填充材质,类型为Material或URL字符串,默认为白色。
平面是否需要轮廓线,类型为布尔值,默认为false。
平面轮廓线的颜色,类型为Color,默认为黑色。
平面轮廓线的宽度,类型为数字,默认为1.0。
平面轮廓线的透明度,类型为数字(0.0到1.0之间),默认为1.0。
平面的可见距离条件,类型为DistanceDisplayCondition对象,默认为undefined,表示不进行限制。
更新平面显示。在修改了平面配置项后调用该方法,以使修改生效。
平面的某个配置项发生变化时触发的事件。事件中返回的是一个字符串数组,表示哪些配置项发生了变化。
var plane = viewer.entities.add({
position: Cesium.Cartesian3.fromDegrees(-75.59777, 40.03883),
plane: {
dimensions: new Cesium.Cartesian2(400000.0, 300000.0),
material: Cesium.Color.RED.withAlpha(0.5),
outline: true,
outlineColor: Cesium.Color.YELLOW,
outlineWidth: 3.0,
outlineOpacity: 0.5,
distanceDisplayCondition: new Cesium.DistanceDisplayCondition(10000.0, 300000.0)
}
});
// 修改平面属性
plane.plane.dimensions = new Cesium.Cartesian2(500000.0, 400000.0);
plane.plane.outlineColor = Cesium.Color.BLUE;
// 更新平面显示
plane.plane.update();
上面的示例代码中,创建了一个中心坐标为(-75.59777, 40.03883)的宽400000米,高300000米的矩形,填充颜色为半透明的红色,轮廓线颜色为黄色,宽度为3.0,透明度为0.5,可见距离范围为10000.0到300000.0米。
接着,修改了平面的尺寸和轮廓线颜色,最后调用update方法更新平面显示。