English | 简体中文

PolylineMaterialAppearance

new Cesium.PolylineMaterialAppearance(options)

An appearance for PolylineGeometry that supports shading with materials.
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 PolylineMaterialAppearance#renderState has alpha blending enabled.
material Material Material.ColorType optional The material used to determine the fragment color.
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:
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.PolylineMaterialAppearance.VERTEX_FORMAT
    })
  }),
  appearance : new Cesium.PolylineMaterialAppearance({
    material : Cesium.Material.fromType('Color')
  })
});
See:

Members

static constant Cesium.PolylineMaterialAppearance.VERTEX_FORMAT : VertexFormat

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

readonly fragmentShaderSource : string

The GLSL source code for the fragment shader.
The material used to determine the fragment color. Unlike other PolylineMaterialAppearance properties, this is not read-only, so an appearance's material can change on the fly.
Default Value: Material.ColorType
See:
The WebGL fixed-function state to use when rendering the geometry.

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

When true, the geometry is expected to appear translucent so PolylineMaterialAppearance#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: PolylineMaterialAppearance.VERTEX_FORMAT

readonly vertexShaderSource : string

The GLSL source code for the vertex shader.

Methods

getFragmentShaderSource()string

Procedurally creates the full GLSL fragment shader source. For PolylineMaterialAppearance, this is derived from PolylineMaterialAppearance#fragmentShaderSource and PolylineMaterialAppearance#material.
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 PolylineMaterialAppearance#translucent and Material#isTranslucent.
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.