TimeDynamicPointCloud

new Cesium.TimeDynamicPointCloud(options)

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

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

Name Type Description
options object 对象,具有以下属性:
Name Type Default Description
clock Clock 确定时间维度值时使用的 Clock 实例。
intervals TimeIntervalCollection 一个 TimeIntervalCollection,其 data 属性是一个对象,其中包含 3D 瓦片的 uri、点云瓦片和可选转换
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 Styling language 定义的样式,应用于点云中的每个点。
clippingPlanes ClippingPlaneCollection optional 用于选择性地禁用点云渲染的 ClippingPlaneCollection

Members

正在渲染的帧的边界球体。如果未渲染帧,则返回 undefined
用于选择性地禁用点云渲染的 ClippingPlaneCollection
触发事件以指示已渲染新帧。

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

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

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

传递给侦听器的 error 对象包含两个属性:

  • 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
用于根据几何误差和 Eye Dome 照明控制点大小的选项。
确定点云是投射还是接收来自光源的阴影。

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

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

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

分配 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 标记为 dirty,这将强制所有 点以在下一帧中重新评估样式。
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.