TimeDynamicPointCloud

new Cesium.TimeDynamicPointCloud(options)

提供时间动态点云数据的回放。

点云帧在由平均帧加载时间和当前时钟速度决定的间隔中预加载。 如果中间帧无法及时加载以满足播放速度,则将跳过它们。如果帧足够小或时钟速度足够慢,则不会跳过任何帧。

Name Type Description
options object 具有以下属性的对象:
Name Type Default Description
clock Clock 用于确定时间维度值的 Clock 实例。
intervals TimeIntervalCollection 一个 TimeIntervalCollection,其data属性是一个包含指向3D Tiles点云瓦片的uri和可选transform的对象。
show boolean true optional 确定点云是否显示。
modelMatrix Matrix4 Matrix4.IDENTITY optional 用于变换点云的4x4变换矩阵。
shadows ShadowMode ShadowMode.ENABLED optional 确定点云是否会从光源投射或接收阴影。
maximumMemoryUsage number 256 optional 点云可以使用的最大内存量(以MB为单位)。
shading object optional 用于构造 PointCloudShading 对象的选项,以控制点衰减和眼罩照明。
style Cesium3DTileStyle optional 使用 3D Tiles样式语言 定义的样式,应用于点云中的每个点。
clippingPlanes ClippingPlaneCollection optional ClippingPlaneCollection,用于选择性禁用点云的渲染。

Members

正在渲染的帧的包围球。如果没有帧被渲染,则返回 undefined
用于选择性禁用点云渲染的 ClippingPlaneCollection
触发的事件,指示新帧已渲染。

时间动态点云 TimeDynamicPointCloud 会传递给事件监听器。

Default Value: new Event()
Example:
pointCloud.frameChanged.addEventListener(function(timeDynamicPointCloud) {
    viewer.camera.viewBoundingSphere(timeDynamicPointCloud.boundingSphere);
});
触发的事件,指示帧加载失败。如果请求其uri失败或由于内容无效而导致处理失败,帧可能会加载失败。

如果没有事件监听器,将在控制台记录错误消息。

传递给监听器的错误对象包含两个属性:

  • uri: 加载失败的帧的uri。
  • message: 错误消息。
Default Value: new Event()
Example:
pointCloud.frameFailed.addEventListener(function(error) {
    console.log(`An error occurred loading frame: ${error.uri}`);
    console.log(`Error: ${error.message}`);
});
用于缓存点云帧的最大GPU内存(以MB为单位)。

不被加载或渲染的帧将被卸载以强制执行此限制。

如果减少此值导致卸载瓦片,则在下一帧卸载这些瓦片。

Default Value: 256
See:
用于变换点云的4x4变换矩阵。
Default Value: Matrix4.IDENTITY
用于基于几何误差和眼罩照明控制点大小的选项。
确定点云是否会从光源投射或接收阴影。

启用阴影会影响性能。投射阴影的点云必须渲染两次,一次从相机角度渲染,另一次从光源的视角渲染。

仅当 Viewer#shadowstrue 时,才会渲染阴影。

Default Value: ShadowMode.ENABLED
确定点云是否会被显示。
Default Value: true
使用 3D Tiles Styling language 定义的样式, 应用到点云中的每个点。

赋值 undefined 将移除样式,在未应用任何样式时将点云的视觉外观恢复为默认。

Example:
pointCloud.style = new Cesium.Cesium3DTileStyle({
   color : {
       conditions : [
           ['${Classification} === 0', 'color("purple", 0.5)'],
           ['${Classification} === 1', 'color("red")'],
           ['true', '${COLOR}']
       ]
   },
   show : '${Classification} !== 2'
});
See:

readonly totalMemoryUsageInBytes : number

点云使用的GPU内存总量(以字节为单位)。
See:

Methods

销毁此对象持有的WebGL资源。销毁对象允许以确定性的方式释放 WebGL资源,而不是依赖垃圾收集器来销毁此对象。

一旦对象被销毁,就不应使用它;调用除 isDestroyed 之外的任何函数将导致 DeveloperError 异常。因此, 将返回值(undefined)赋值给对象,如示例所示。
Throws:
Example:
pointCloud = pointCloud && pointCloud.destroy();
See:
如果此对象已被销毁,则返回true;否则返回false。

如果此对象已被销毁,则不应使用它;调用除 isDestroyed 之外的任何函数将导致 DeveloperError 异常。
Returns:
true 如果此对象已被销毁;否则返回 false
See:
将点云的 TimeDynamicPointCloud#style 标记为脏,这会迫使所有 点在下一帧中重新评估样式。
需要帮助?获得答案的最快方法是来自社区和团队 Cesium Forum.