TimeDynamicPointCloud

new Cesium.TimeDynamicPointCloud (options)

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

点云帧按平均帧加载时间和当前时钟速度确定的间隔进行预取。如果中间帧不能及时加载以满足播放速度,它们将被跳过。如果帧足够小或时钟足够慢,则不会跳过任何帧。

Name Type Description
options Object 具有以下属性的对象:
姓名 类型 默认 描述
clock 在确定时间维度的值时使用的 Clock 实例。
intervals 时间间隔集合 一个 TimeIntervalCollection ,它的 data 属性是一个对象,其中包含一个到 3D Tiles Point Cloud tile 的 uri 和一个可选的 transform
show 布尔值 true 可选 确定是否显示点云。
modelMatrix 矩阵4 Matrix4.IDENTITY 可选 转换点云的 4x4 转换矩阵。
shadows 阴影模式 ShadowMode.ENABLED 可选 确定点云是投射还是接收来自光源的阴影。
maximumMemoryUsage 数字 256 可选 点云可以使用的最大内存量(以 MB 为单位)。
shading 目的 可选 用于构造 PointCloudShading 对象以控制点衰减和眼顶照明的选项。
style Cesium3DTileStyle 可选 使用 3D Tiles Styling 语言 定义的样式,应用于点云中的每个点。
clippingPlanes ClippingPlaneCollection 可选 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}`);
});

maximumMemoryUsage : Number

可用于缓存点云帧的最大 GPU 内存量(以 MB 为单位)。

未加载或渲染的帧将被卸载以强制执行此操作。

如果减小此值导致卸载图块,则将在下一帧卸载图块。

Default Value: 256
See:
转换点云的 4x4 转换矩阵。
Default Value: Matrix4.IDENTITY
获取点云第一次渲染帧时将被解析的 promise。
根据几何误差和眼罩照明控制点大小的选项。
确定点云是投射还是接收来自光源的阴影。

启用阴影会影响性能。投射阴影的点云必须渲染两次,一次来自相机,另一次来自灯光的视点。

仅当 Viewer#shadows true 时才会渲染阴影。

Default Value: ShadowMode.ENABLED
确定是否显示点云。
Default Value: true
使用 3D Tiles Styling 语言 定义的样式应用于点云中的每个点。

指定 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:

isDestroyed () Boolean

如果此对象被销毁,则返回 true;否则为假。

如果该对象被销毁,则不应使用;调用 isDestroyed 以外的任何函数都会导致 DeveloperError 异常。
Returns:
如果此对象被销毁,则为 true ;否则, false
See:
将点云的 TimeDynamicPointCloud#style 标记为脏,这会强制所有点在下一帧中重新评估样式。