Clock

new SuperMap3D.Clock(options)

用于记录模拟时间的简易时钟。
Name Type Description
options Object optional 具有以下属性的可选对象:
Name Type Default Description
startTime JulianDate optional 时钟的开始时间。
stopTime JulianDate optional 时钟的停止时间。
currentTime JulianDate optional 当前时间。
multiplier Number 1.0 optional 确定调用Clock#tick时前进的时间,负值允许向后前进。
clockStep ClockStep ClockStep.SYSTEM_CLOCK_MULTIPLIER optional 确定对Clock#tick的调用是帧相关还是系统时钟相关。
clockRange ClockRange ClockRange.UNBOUNDED optional 确定当达到#startTime#stopTime时时钟应该如何表现。
canAnimate Boolean true optional Clock#tick是否可以提前时间。例如,如果正在缓冲数据,则该值可能为false。只有当#canAnimate#shouldAnimate都为true时,时钟才会滴答。
shouldAnimate Boolean true optional 指示Clock#tick是否应该尝试提前时间。只有当#canAnimate#shouldAnimate都为true时,时钟才会滴答。
Throws:
Example:
// Create a clock that loops on Christmas day 2013 and runs in real-time.
var clock = new SuperMap3D.Clock({
   startTime : SuperMap3D.JulianDate.fromIso8601("2013-12-25"),
   currentTime : SuperMap3D.JulianDate.fromIso8601("2013-12-25"),
   stopTime : SuperMap3D.JulianDate.fromIso8601("2013-12-26"),
   clockRange : SuperMap3D.ClockRange.LOOP_STOP,
   clockStep : SuperMap3D.ClockStep.SYSTEM_CLOCK_MULTIPLIER
});
See:

Members

canAnimate : Boolean

Clock#tick是否可以提前时间。例如,如果正在缓冲数据,则该值可能为false。 只有当#canAnimate#shouldAnimate都为true时,时钟才会提前时间。
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

当前时间。 更改此属性将从clockStep。 SYSTEM_CLOCK}到ClockStep.SYSTEM_CLOCK_MULTIPLIER

multiplier : Number

获取或设置调用Clock#tick时前进的时间。负值允许向后推进。 如果Clock#clockStep设置为clockStep。TICK_DEPENDENT,这是前进的秒数。 如果Clock#clockStep设置为clockStep。SYSTEM_CLOCK_MULTIPLIER,该值乘以自上次调用tick以来经过的系统时间。 更改此属性将从clockStep。SYSTEM_CLOCK}到ClockStep.SYSTEM_CLOCK_MULTIPLIER
Default Value: 1.0

onTick : Event

Clock#tick被调用时触发的Event

shouldAnimate : Boolean

指示Clock#tick是否应该尝试提前时间。 只有当#canAnimate#shouldAnimate都为true时,时钟才会提前时间。 更改此属性将从clockStep ClockStep.SYSTEM_CLOCK to ClockStep.SYSTEM_CLOCK_MULTIPLIER
Default Value: true

startTime : JulianDate

时钟的开始时间。

stopTime : JulianDate

时钟的停止时间。

Methods

tick()JulianDate

根据当前配置选项,从当前时间往前调时钟。 Tick应该在每一帧被调用,不管动画是否正在发生。 要控制动画,可以使用shouldAnimate属性。
Returns:
The new value of the Clock#currentTime property.