PolylineMaterialAppearance

new SuperMap3D.PolylineMaterialAppearance(options)

PolylineGeometry的外观,支持材质着色。
Name Type Description
options Object optional 具有以下属性的对象:
Name Type Default Description
translucent Boolean true optional 当 true 时,几何体应该是半透明的,因此PolylineMaterialAppearance#renderState启用了 alpha 混合。
material Material Material.ColorType optional 用于确定片段颜色的材质。
vertexShaderSource String optional 可选的 GLSL 顶点着色器源,用于覆盖默认顶点着色器。
fragmentShaderSource String optional 可选的 GLSL 片段着色器源,用于覆盖默认片段着色器。
renderState RenderState optional 可选的渲染状态,用于覆盖默认渲染状态。
Example:
var primitive = new SuperMap3D.Primitive({
  geometryInstances : new SuperMap3D.GeometryInstance({
    geometry : new SuperMap3D.PolylineGeometry({
      positions : SuperMap3D.Cartesian3.fromDegreesArray([
        0.0, 0.0,
        5.0, 0.0
      ]),
      width : 10.0,
      vertexFormat : SuperMap3D.PolylineMaterialAppearance.VERTEX_FORMAT
    })
  }),
  appearance : new SuperMap3D.PolylineMaterialAppearance({
    material : SuperMap3D.Material.fromType('Color')
  })
});

Members

staticconstantSuperMap3D.PolylineMaterialAppearance.VERTEX_FORMAT : VertexFormat

所有PolylineMaterialAppearance实例都兼容的VertexFormat。这需要position和st属性。

readonlyclosed : Boolean

当为true时,几何体将被关闭,因此PolylineMaterialAppearance#renderState将启用背面剔除。这对于polylinemateralappearance总是错误的。
Default Value: false

readonlyfragmentShaderSource : String

片段着色器的 GLSL 源代码。

material : Material

用于确定片段颜色的材质。与其他PolylineMaterialAppearance属性不同,它不是只读的,因此外观的材质可以随时更改。
Default Value: Material.ColorType

readonlyrenderState : Object

渲染几何图形时使用的 WebGL 固定功能状态。

渲染状态可以在构造PolylineMaterialAppearance实例时显式定义,也可以通过PolylineMaterialAppearance#translucentPolylineMaterialAppearance#closed.

translucent : Boolean

当为 true 时,几何体应该是半透明的,因此PolylineMaterialAppearance#renderState启用了 alpha 混合。
Default Value: true

readonlyvertexFormat : VertexFormat

此外观实例兼容的VertexFormat 一个几何体可以有更多的顶点属性并且仍然是兼容的——以潜在的性能成本为代价——但它不能少。
Default Value: PolylineMaterialAppearance.VERTEX_FORMAT

readonlyvertexShaderSource : String

顶点着色器的 GLSL 源代码。

Methods

getFragmentShaderSource()String

程序上创建完整的GLSL片段着色器源。对于PolylineMaterialAppearance,这是从PolylineMaterialAppearance#fragmentShaderSourcePolylineMaterialAppearance#material派生的。
Returns:
完整的GLSL片段着色器源代码。

getRenderState()Object

创建呈现状态。这不是最终渲染状态实例;相反,它可以包含与在上下文中创建的呈现状态相同的呈现状态属性子集。
Returns:
呈现状态。

isTranslucent()Boolean

根据PolylineMaterialAppearance#半透明Material#isTranslucent确定几何是否是半透明的。
Returns:
如果外观是半透明的,则为True。