Appearance

new SuperMap3D.Appearance(options)

外观定义了完整的GLSL顶点和片段着色器以及用于绘制Primitive的渲染状态。所有的外观都实现这个基本Appearance接口。
Name Type Description
options Object optional 具有以下属性的对象:
Name Type Default Description
translucent Boolean true optional为true时,几何体应该是半透明的,所以Appearance#renderState启用了alpha混合。
closed Boolean false optional为true时,几何体将被封闭,因此Appearance#renderState将启用背面剔除。
material Material Material.ColorType optional 用来确定碎片颜色的材料。
vertexShaderSource String optional 可选的GLSL顶点着色源,覆盖默认顶点着色。
fragmentShaderSource String optional 可选的GLSL片段着色源,覆盖默认的片段着色。
renderState RenderState optional 可选的呈现状态,覆盖默认呈现状态。
See:

Members

readonlyclosed : Boolean

当为true时,预计几何体将被封闭。
Default Value: false

readonlyfragmentShaderSource : String

片段着色器的GLSL源代码。考虑到Appearance#material,完整的片段着色器源代码是按程序构建的。使用Appearance#getFragmentShaderSource获取完整的源代码。

material : Material

用来确定碎片颜色的材质。与其他Appearance属性不同,这不是只读的,外观的材质可以动态更改。

readonlyrenderState : Object

渲染几何体时使用的WebGL固定函数状态。

translucent : Boolean

为true时,几何体应该是半透明的。
Default Value: true

readonlyvertexShaderSource : String

顶点着色器的GLSL源代码。

Methods

getFragmentShaderSource()String

程序上为这个外观创建完整的GLSL片段着色器源,考虑到#fragmentShaderSource#material
Returns:
完整的GLSL片段着色器源代码。

getRenderState()Object

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

isTranslucent()Boolean

根据transparentMaterial#isTranslucent确定几何体是否是半透明的。
Returns:
如果外观是半透明则为true。