Class: PolylineMaterialAppearance

PolylineMaterialAppearance

new PolylineMaterialAppearance()

PolylineGeometry的外观,支持材质着色。

Name Type Default Description
options.translucent Boolean true 可选

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

options.material Material Material.ColorType 可选

用于确定片段颜色的材质。

options.vertexShaderSource String 可选

可选的 GLSL 顶点着色器源,用于覆盖默认顶点着色器。

options.fragmentShaderSource String 可选

可选的 GLSL 片段着色器源,用于覆盖默认片段着色器。

options.renderState RenderState 可选

可选的渲染状态,用于覆盖默认渲染状态。

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

(static, constant) VERTEX_FORMATVertexFormat

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

readonly closedBoolean

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

Default Value:
false

readonly fragmentShaderSourceString

片段着色器的 GLSL 源代码。

materialMaterial

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

Default Value:
Material.ColorType

readonly renderStateObject

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

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

translucentBoolean

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

Default Value:
true

readonly vertexFormatVertexFormat

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

Default Value:
PolylineMaterialAppearance.VERTEX_FORMAT

readonly vertexShaderSourceString

顶点着色器的 GLSL 源代码。

Methods

getFragmentShaderSource(){String}

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

Returns:
Type Description
String 完整的GLSL片段着色器源代码。

getRenderState(){Object}

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

Returns:
Type Description
Object 呈现状态。

isTranslucent(){Boolean}

根据PolylineMaterialAppearance#半透明Material#isTranslucent确定几何是否是半透明的。

Returns:
Type Description
Boolean 如果外观是半透明的,则为True。