PolylineColorAppearance

带有颜色属性和PolylineGeometryGroundPolylineGeometryGeometryInstance实例的外观。这允许使用相同的Primitive绘制多个几何图形实例,每个实例的颜色都不同。
new PolylineColorAppearance(options)
Parameters:
options (Object)
Name Description
options.translucent
Boolean
default true
true时,几何体将显示为半透明,因此PolylineColorAppearance#renderState启用了alpha混合。
options.vertexShaderSource
String
可选的glsl顶点明暗器源覆盖默认的顶点明暗器。
options.fragmentShaderSource
String
可选的glsl fragment shader source覆盖默认的fragment shader。
options.renderState
RenderState
可选的渲染状态以覆盖默认的渲染状态。
Example
// A solid white line segment
var primitive = new bmgl.Primitive({
  geometryInstances : new bmgl.GeometryInstance({
    geometry : new bmgl.PolylineGeometry({
      positions : bmgl.Cartesian3.fromDegreesArray([
        0.0, 0.0,
        5.0, 0.0
      ]),
      width : 10.0,
      vertexFormat : bmgl.PolylineColorAppearance.VERTEX_FORMAT
    }),
    attributes : {
      color : bmgl.ColorGeometryInstanceAttribute.fromColor(new bmgl.Color(1.0, 1.0, 1.0, 1.0))
    }
  }),
  appearance : new bmgl.PolylineColorAppearance({
    translucent : false
  })
});

Members

(static, constant) VERTEX_FORMAT : VertexFormat

所有PolylineColorAppearance实例都兼容的VertexFormat。这只需要一个position属性。

(readonly) closed : Boolean

true时,几何图形将关闭,因此PolylineColorAppearance#renderState启用背面剔除。这总是false表示PolylineColorAppearance
Default Value: false

(readonly) fragmentShaderSource : String

片段明暗器的glsl源代码。

material : Material

此属性是Appearance接口的一部分,但PolylineColorAppearance不使用,因为使用了完全自定义的片段明暗器。
Default Value: undefined

(readonly) renderState : Object

呈现几何图形时要使用的WebGL固定函数状态。

在构造PolylineColorAppearance实例时,可以显式定义呈现状态,或者通过PolylineColorAppearance#translucent隐式设置呈现状态。

translucent : Boolean

true时,几何体将显示为半透明,因此PolylineColorAppearance#renderState启用了alpha混合。
Default Value: true

(readonly) vertexFormat : VertexFormat

此外观实例与之兼容的VertexFormat。几何体可以有更多的顶点属性,并且仍然是兼容的(以潜在的性能代价),但是它不能有更少的顶点属性。
Default Value: PolylineColorAppearance.VERTEX_FORMAT

(readonly) vertexShaderSource : String

顶点明暗器的glsl源代码。

Methods

getFragmentShaderSource() → {String}
程序创建完整的glsl片段明暗器源。
getRenderState() → {Object}
创建渲染状态。这不是最终的渲染状态实例;相反,它可以包含与上下文中创建的渲染状态相同的渲染状态属性的子集。
isTranslucent() → {Boolean}
确定几何图形是否基于PolylineColorAppearance#translucent半透明。