Scene
中封闭几何体的体积,以便高亮显示。
基元将几何体实例与描述完整着色的 Appearance
组合在一起,包括
Material
和 RenderState
的 RenderState} 中。 粗略地说,geometry 实例定义了结构和位置,
和外观定义视觉特征。 解耦的几何图形和外观使我们能够混合
并匹配其中的大多数,并彼此独立地添加新的几何图形或外观。
此时仅支持在所有实例中具有相同颜色的 PerInstanceColorAppearance
使用
ClassificationPrimitive 径直.
要获得完整的 Appearance
支持,请在对地形或 3D 瓦片进行分类时改用 GroundPrimitive
。
为了正确渲染,此功能需要 EXT_frag_depth WebGL 扩展。对于不支持此扩展的硬件,有 将在某些视角下渲染伪影。
有效的几何图形包括 BoxGeometry
、CylinderGeometry
、EllipsoidGeometry
、PolylineVolumeGeometry
和 SphereGeometry
。
跟随椭球体表面的几何图形,例如 CircleGeometry
、CorridorGeometry
、EllipseGeometry
、PolygonGeometry
和 RectangleGeometry
,
如果它们是凸出体积,则它们也有效;否则,它们将不会被渲染。
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
optional
对象,具有以下属性:
|
Members
-
Default Value:
true
-
Default Value:
true
classificationType : ClassificationType
-
Default Value:
ClassificationType.BOTH
true
,则压缩几何顶点,这将节省内存。
-
Default Value:
true
为基元中的每个绘制命令绘制边界球体。
-
Default Value:
false
为基本体中的每个几何体绘制阴影体积。
-
Default Value:
false
readonly geometryInstances : Array|GeometryInstance
options.releaseGeometryInstances
为 undefined
在构造基元时为 true
。
在渲染基元后更改此属性不起作用。
由于使用的渲染技术,所有几何实例必须具有相同的颜色。
如果存在具有不同颜色的实例,将引发 DeveloperError
在第一次尝试渲染时。
-
Default Value:
undefined
-
Default Value:
false
ClassificationPrimitive#update
时呈现
被调用。
true
,则基元不保留对输入 geometryInstances
的引用以节省内存。
-
Default Value:
true
-
Default Value:
true
true
,则几何体顶点将针对前顶点着色器缓存和后顶点着色器缓存进行优化。
-
Default Value:
true
Methods
Name | Type | Description |
---|---|---|
scene |
Scene | 场景。 |
Returns:
true
(如果支持 ClassificationPrimitives);否则,返回 false
一旦对象被销毁,就不应该使用它;调用
isDestroyed
将导致 DeveloperError
异常。 因此
将返回值 (undefined
) 分配给对象,如示例中所示。
Throws:
-
DeveloperError : 这个物体被摧毁了,destroy().
Example:
e = e && e.destroy();
See:
GeometryInstance
的可修改的每实例属性。
Name | Type | Description |
---|---|---|
id |
* |
GeometryInstance 的 ID。 |
Returns:
Throws:
-
DeveloperError : 必须在调用 getGeometryInstanceAttributes 之前调用 update。
Example:
const attributes = primitive.getGeometryInstanceAttributes('an id');
attributes.color = Cesium.ColorGeometryInstanceAttribute.toValue(Cesium.Color.AQUA);
attributes.show = Cesium.ShowGeometryInstanceAttribute.toValue(true);
如果此对象已销毁,则不应使用;调用
isDestroyed
将导致 DeveloperError
异常。
Returns:
true
,如果此对象被销毁;否则为 false
。
Throws:
-
DeveloperError : 所有实例几何体必须具有相同的 primitiveType。
-
DeveloperError : 外观和材质具有相同的名称。
-
DeveloperError : 并非所有的几何实例都具有相同的 color 属性。