new Cesium.Clock(options)
用于跟踪模拟时间的简单时钟。
Name | Type | Description | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
optional
对象,具有以下属性:
|
异常情况:
-
DeveloperError : startTime必须在stopTime之前。
示例:
// 创建一个在2013年圣诞节循环并实时运行的时钟。
var clock = new Cesium.Clock({
startTime : Cesium.JulianDate.fromIso8601("2013-12-25"),
currentTime : Cesium.JulianDate.fromIso8601("2013-12-25"),
stopTime : Cesium.JulianDate.fromIso8601("2013-12-26"),
clockRange : Cesium.ClockRange.LOOP_STOP,
clockStep : Cesium.ClockStep.SYSTEM_CLOCK_MULTIPLIER
});
参考:
成员变量
canAnimate : Boolean
指示
Clock#tick
是否可以提前(advance)时间。例如,如果正在缓冲数据,则可能为false。
只有当#canAnimate
和#shouldAnimate
为true时,时钟才会滴答作响(tick)。
-
Default Value:
true
clockRange : ClockRange
确定当到达
#startTime
或#stopTime
时时钟应该如何工作。
-
Default Value:
ClockRange.UNBOUNDED
clockStep : ClockStep
确定对
Clock#tick
的调用是依赖于帧还是依赖于系统时钟。
将此属性更改为ClockStep.SYSTEM_CLOCK
将设置Clock#multiplier
为1.0,
设置Clock#shouldAnimate
为true, 并将Clock#currentTime
设置为当前系统时钟时间。
-
Default Value:
ClockStep.SYSTEM_CLOCK_MULTIPLIER
currentTime : JulianDate
multiplier : Number
获取或设置在调用
Clock#tick
时前进(advances)多少时间,负值允许向后前进。(倍增器)
如果Clock#clockStep
被设置为ClockStep.TICK_DEPENDENT
,这是要前进(advance)的秒数。
如果Clock#clockStep
被设置为ClockStep.SYSTEM_CLOCK_MULTIPLIER
,这个值乘以自最后一次调用Clock#tick
以来经过的系统时间。
更改此属性将更改Clock#clockStep
从ClockStep.SYSTEM_CLOCK
到ClockStep.SYSTEM_CLOCK_MULTIPLIER
-
Default Value:
1.0
onStop : Event
当到达
Clock#stopTime
时触发的Event
。
onTick : Event
调用
Clock#tick
时触发的Event
。
shouldAnimate : Boolean
指示
Clock#tick
是否应该尝试提前(advance)时间。
只有当#canAnimate
和#shouldAnimate
为true时,时钟才会前进。
更改此属性将更改Clock#clockStep
从ClockStep.SYSTEM_CLOCK
到ClockStep.SYSTEM_CLOCK_MULTIPLIER
-
Default Value:
false
startTime : JulianDate
时钟的开始时间
stopTime : JulianDate
时钟的停止时间。
内置方法
根据当前配置选项从当前时间提前(advances)时钟。
无论动画是否发生,每一帧都应该调用tick。 要控制动画,使用
Clock#shouldAnimate
属性。
返回值:
Clock#currentTime
属性的新值。