FrameRateMonitor

new Cesium.FrameRateMonitor ( options )

监控 Scene 中的帧速率(每秒帧数)并在帧速率低于阈值时引发事件。稍后,如果帧速率恢复到所需的水平,则会引发一个单独的事件。为避免为单个 Scene 创建多个 FrameRateMonitor,请使用 FrameRateMonitor.fromScene 而不是显式构造实例。
Name Type Description
options Object 具有以下属性的 可选 对象:
姓名 类型 默认 描述
scene 场景 要监视其性能的 Scene 实例。
samplingWindow 数字 5.0 可选 计算平均帧速率的滑动窗口的长度,以秒为单位。
quietPeriod 数字 2.0 可选 在开始测量性能之前,在启动和每次页面变为可见时(即用户切换回选项卡时)等待的时间长度,以秒为单位。
warmupPeriod 数字 5.0 可选 预热期的长度,以秒为单位。在预热期间,需要单独的(通常较低的)帧速率。
minimumFrameRateDuringWarmup 数字 4 可选 预热期间可接受的性能所需的最小每秒帧数。如果在 warmupPeriod 期间的任何采样窗口期间帧速率平均低于此值,则将引发 lowFrameRate 事件,并且页面将重定向到 redirectOnLowFrameRateUrl(如果有)。
minimumFrameRateAfterWarmup 数字 8 可选 预热期结束后可接受的性能所需的最小每秒帧数。如果在 warmupPeriod 之后的任何采样窗口期间帧速率平均低于此值,则将引发 lowFrameRate 事件,并且页面将重定向到 redirectOnLowFrameRateUrl(如果有)。

Members

static Cesium.FrameRateMonitor.defaultSettings : Object

默认帧率监控设置。当 FrameRateMonitor.fromScene 需要创建新的帧速率监视器时,以及未传递给 FrameRateMonitor 构造函数的任何设置时,使用这些设置。

lastFramesPerSecond : Number

获取最近一次 samplingWindow 窗口中最近计算的平均每秒帧数。如果尚未计算帧速率,则此属性可能未定义。
获取检测到低帧速率时引发的事件。该函数将作为其第一个参数传递 Scene 实例,并将采样窗口上每秒的平均帧数作为其第二个参数。

minimumFrameRateAfterWarmup : Number

获取或设置预热期结束后可接受的性能所需的最小每秒帧数。如果在 warmupPeriod 之后的任何 samplingWindow 窗口期间帧速率平均低于此值,则将引发 lowFrameRate 事件,并且页面将重定向到 redirectOnLowFrameRateUrl (如果有)。

minimumFrameRateDuringWarmup : Number

获取或设置预热期间可接受的性能所需的最小每秒帧数。如果在 warmupPeriod 期间的任何 samplingWindow 期间帧速率平均低于此值,则会引发 lowFrameRate 事件,并且页面将重定向到 redirectOnLowFrameRateUrl (如果有)。
获取当帧速率在较低后恢复到正常水平时引发的事件。该函数将作为其第一个参数传递 Scene 实例,并将采样窗口上每秒的平均帧数作为其第二个参数。
获取或设置在启动和每次页面变为可见时(即当用户切换回选项卡时)在开始测量性能之前等待的时间长度,以秒为单位。

samplingWindow : Number

获取或设置计算平均帧速率的滑动窗口的长度,以秒为单位。
获取要监视其性能的 Scene 实例。

warmupPeriod : Number

获取或设置预热期的长度,以秒为单位。在预热期间,需要单独的(通常较低的)帧速率。

Methods

static Cesium.FrameRateMonitor.fromScene (scene) FrameRateMonitor

获取给定场景的 FrameRateMonitor 。如果场景还没有 FrameRateMonitor ,则使用 FrameRateMonitor.defaultSettings 创建一个。
Name Type Description
scene Scene 获取 FrameRateMonitor 的场景。
Returns:
场景的 FrameRateMonitor
取消订阅此实例正在侦听的所有事件。一旦一个对象被销毁,它就不应该被使用;调用 isDestroyed 以外的任何函数都会导致 DeveloperError 异常。因此,如示例中所做的那样,将返回值 ( undefined ) 分配给对象。
Throws:
See:

isDestroyed () Boolean

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

如果这个对象被破坏了,它就不应该被使用;调用 isDestroyed 以外的任何函数都将导致 DeveloperError 异常。
Returns:
如果此对象被销毁,则为真;否则为假。
See:
暂停对帧速率的监控。要恢复监视,每次调用此函数时都必须调用 FrameRateMonitor#unpause 一次。
恢复对帧速率的监控。如果 FrameRateMonitor#pause 被多次调用,该函数必须被调用相同的次数才能真正恢复监控。