Skip to content

KBE3D / KBCore / Cesium / PolylineMaterialAppearance

类: PolylineMaterialAppearance

An appearance for PolylineGeometry that supports shading with materials.

示例

ts
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')
  })
});

参数

Object with the following properties:

参数

When <code>true</code>, the geometry is expected to appear translucent so PolylineMaterialAppearance#renderState has alpha blending enabled.

参数

The material used to determine the fragment color.

参数

Optional GLSL vertex shader source to override the default vertex shader.

参数

Optional GLSL fragment shader source to override the default fragment shader.

参数

Optional render state to override the default render state.

属性

VERTEX_FORMAT

readonly static VERTEX_FORMAT: VertexFormat

The VertexFormat that all PolylineMaterialAppearance instances are compatible with. This requires <code>position</code> and <code>st</code> attributes.


material

material: Material

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.


translucent

translucent: boolean

When <code>true</code>, the geometry is expected to appear translucent so PolylineMaterialAppearance#renderState has alpha blending enabled.


vertexShaderSource

readonly vertexShaderSource: string

The GLSL source code for the vertex shader.


fragmentShaderSource

readonly fragmentShaderSource: string

The GLSL source code for the fragment shader.


renderState

readonly renderState: any

The WebGL fixed-function state to use when rendering the geometry. <p> The render state can be explicitly defined when constructing a PolylineMaterialAppearance instance, or it is set implicitly via PolylineMaterialAppearance#translucent and PolylineMaterialAppearance#closed. </p>


closed

readonly closed: boolean

When <code>true</code>, the geometry is expected to be closed so PolylineMaterialAppearance#renderState has backface culling enabled. This is always <code>false</code> for <code>PolylineMaterialAppearance</code>.


vertexFormat

readonly vertexFormat: VertexFormat

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.

方法

getFragmentShaderSource()

getFragmentShaderSource(): string

Procedurally creates the full GLSL fragment shader source. For PolylineMaterialAppearance, this is derived from PolylineMaterialAppearance#fragmentShaderSource and PolylineMaterialAppearance#material.

返回

string

The full GLSL fragment shader source.


isTranslucent()

isTranslucent(): boolean

Determines if the geometry is translucent based on PolylineMaterialAppearance#translucent and Material#isTranslucent.

返回

boolean

true if the appearance is translucent.


getRenderState()

getRenderState(): any

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.

返回

any

The render state.

构造函数

构造函数

new PolylineMaterialAppearance(options?: { translucent?: boolean; material?: Material; vertexShaderSource?: string; fragmentShaderSource?: string; renderState?: any; }): PolylineMaterialAppearance

参数

options?
translucent?

boolean

material?

Material

vertexShaderSource?

string

fragmentShaderSource?

string

renderState?

any

返回

PolylineMaterialAppearance

KBE3D @3.0.0 Copyright © 2024-present KBE3D