PolylineColorAppearance 是 CesiumJS 中的一个可视化参数,用于调整绘制线条的外观颜色。
new Cesium.PolylineColorAppearance({
translucent: true|false,
flat: true|false
});
translucent
:可选参数,是否开启透明,默认为 false
。flat
:可选参数,是否相对于光源启用平面照明。默认为 false
。PolylineColorAppearance 被用于动态绘制线条,它可以设置线条颜色及其变化。
PolylineColorAppearance 提供独立的颜色属性。将颜色值传递给 Polyline
实例即可更改其颜色:
polyline.appearance = new Cesium.PolylineColorAppearance({
translucent : false,
flat : true
});
polyline.material.uniforms.color = red;
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
fragmentShaderSource | String | undefined | 可选。覆盖片元着色器源。 |
vertexShaderSource | String | undefined | 可选。鉴定片源着色器。 |
renderState | RenderState | undefined | 可选。深度测试/混合表面的状态。这是可能的使用此外观时调整绘图表面的状态。 |
translucent | Boolean | undefined | 可选。是否开启透明。 |
closed | Boolean | false | 可选。指示 Polyline 是否封闭。 |
flat | Boolean | undefined | 可选。是否相对于光源启用平面照明。 |
// 线条颜色值
var terrainProvider = new Cesium.TerrainProvider({
url : '//assets.agi.com/stk-terrain/world',
requestVertexNormals : true
});
viewer.terrainProvider = terrainProvider;
var center = Cesium.Cartesian3.fromDegrees(-90.0, 38.0);
viewer.camera.flyTo({
destination : center,
// 距离目标点的高度偏移值
offset : new Cesium.HeadingPitchRange(0, -90, 13000),
duration : 3
});
var red = Cesium.Color.RED;
var green = Cesium.Color.GREEN;
// 绘制线条
var polyPositions = Cesium.Cartesian3.fromDegreesArray([
-90.0, 38.0,
-90.0, 39.0
]);
var polyline = viewer.entities.add({
polyline : {
positions : polyPositions,
width : 5,
followSurface : false
}
});
polyline.appearance = new Cesium.PolylineColorAppearance({
translucent : false,
flat : true
});
polyline.material.uniforms.color = red;