ClassificationType
枚举类型指示了使用哪种分类方法来渲染3D模型的不同部分。 在 Cesium3DTileset
中使用,并结合 Cesium3DTileFeature
使用。
NONE
:不分类,所有内容都按照同样的方式绘制。CESIUM_3D_TILE
:根据与3D瓦片相关的属性进行分类。REGION
:在栅格化地形上使用原始的边界框进行分类。这样在地形上绘制场景时,3D模型能够使用该分类方法,以便在边缘处与地形产生更平滑的过渡。BOX
:通过在3D模型的边界框中创建投影来执行简单的体积检测进行分类。 只有在支持webgl2或winfdows上的 ANGLE_instanced_arrays 扩展的情况下,才会使用此分类方式。ELLIPSOID
:通过在3D模型的椭球体边界上创建投影来执行简单的体积检测进行分类。 只有在支持webgl2或winfdows上的 ANGLE_instanced_arrays 扩展的情况下,才会使用此分类方式。// Usage in Cesium3DTileset
var tileset = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({
url : Cesium.IonResource.fromAssetId(349872)
}));
tileset.style = new Cesium.Cesium3DTileStyle({
color : {
conditions : [
["${ClassificationType} === 0", "color('purple', 0.5)"], // NONE
["${ClassificationType} === 1", "color('red')"], // CESIUM_3D_TILE
["${ClassificationType} === 2", "color('rgba(0, 255, 255, 0.5)')"], // REGION
["${ClassificationType} === 3", "color('rgba(255, 255, 0, 0.5)')"], // BOX
["${ClassificationType} === 4", "color('rgba(255, 0, 255, 0.5)')"] // ELLIPSOID
]
}
});
Cesium3DTileset
Cesium3DTileFeature