English | 简体中文

PolylineColorAppearance

new Cesium.PolylineColorAppearance(options)

An appearance for GeometryInstance instances with color attributes and PolylineGeometry or GroundPolylineGeometry. This allows several geometry instances, each with a different color, to be drawn with the same Primitive.
Name Type Description
options object optional Object with the following properties:
Name Type Default Description
translucent boolean true optional When true, the geometry is expected to appear translucent so PolylineColorAppearance#renderState has alpha blending enabled.
vertexShaderSource string optional Optional GLSL vertex shader source to override the default vertex shader.
fragmentShaderSource string optional Optional GLSL fragment shader source to override the default fragment shader.
renderState object optional Optional render state to override the default render state.
Example:
// A solid white line segment
const primitive = new Cesium.Primitive({
  geometryInstances : new Cesium.GeometryInstance({
    geometry : new Cesium.PolylineGeometry({
      positions : Cesium.Cartesian3.fromDegreesArray([
        0.0, 0.0,
        5.0, 0.0
      ]),
      width : 10.0,
      vertexFormat : Cesium.PolylineColorAppearance.VERTEX_FORMAT
    }),
    attributes : {
      color : Cesium.ColorGeometryInstanceAttribute.fromColor(new Cesium.Color(1.0, 1.0, 1.0, 1.0))
    }
  }),
  appearance : new Cesium.PolylineColorAppearance({
    translucent : false
  })
});

Members

static constant Cesium.PolylineColorAppearance.VERTEX_FORMAT : VertexFormat

The VertexFormat that all PolylineColorAppearance instances are compatible with. This requires only a position attribute.
When true, the geometry is expected to be closed so PolylineColorAppearance#renderState has backface culling enabled. This is always false for PolylineColorAppearance.
Default Value: false

readonly fragmentShaderSource : string

The GLSL source code for the fragment shader.
This property is part of the Appearance interface, but is not used by PolylineColorAppearance since a fully custom fragment shader is used.
Default Value: undefined
The WebGL fixed-function state to use when rendering the geometry.

The render state can be explicitly defined when constructing a PolylineColorAppearance instance, or it is set implicitly via PolylineColorAppearance#translucent.

When true, the geometry is expected to appear translucent so PolylineColorAppearance#renderState has alpha blending enabled.
Default Value: true
The VertexFormat that this appearance instance is compatible with. A geometry can have more vertex attributes and still be compatible - at a potential performance cost - but it can't have less.
Default Value: PolylineColorAppearance.VERTEX_FORMAT

readonly vertexShaderSource : string

The GLSL source code for the vertex shader.

Methods

getFragmentShaderSource()string

Procedurally creates the full GLSL fragment shader source.
Returns:
The full GLSL fragment shader source.
Creates a render state. This is not the final render state instance; instead, it can contain a subset of render state properties identical to the render state created in the context.
Returns:
The render state.
Determines if the geometry is translucent based on PolylineColorAppearance#translucent.
Returns:
true if the appearance is translucent.
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.