Clock

new Cesium.Clock(options)

A simple clock for keeping track of simulated time.
Name Type Description
options Object optional Object with the following properties:
Name Type Default Description
startTime JulianDate optional The start time of the clock.
stopTime JulianDate optional The stop time of the clock.
currentTime JulianDate optional The current time.
multiplier Number 1.0 optional Determines how much time advances when Clock#tick is called, negative values allow for advancing backwards.
clockStep ClockStep ClockStep.SYSTEM_CLOCK_MULTIPLIER optional Determines if calls to Clock#tick are frame dependent or system clock dependent.
clockRange ClockRange ClockRange.UNBOUNDED optional Determines how the clock should behave when Clock#startTime or Clock#stopTime is reached.
canAnimate Boolean true optional Indicates whether Clock#tick can advance time. This could be false if data is being buffered, for example. The clock will only tick when both Clock#canAnimate and Clock#shouldAnimate are true.
shouldAnimate Boolean true optional Indicates whether Clock#tick should attempt to advance time. The clock will only tick when both Clock#canAnimate and Clock#shouldAnimate are true.
Throws:
Example:
// Create a clock that loops on Christmas day 2013 and runs in real-time.
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
});
See:

Members

canAnimate : Boolean

Indicates whether Clock#tick can advance time. This could be false if data is being buffered, for example. The clock will only advance time when both Clock#canAnimate and Clock#shouldAnimate are true.
Default Value: true

clockRange : ClockRange

Determines how the clock should behave when Clock#startTime or Clock#stopTime is reached.
Default Value: ClockRange.UNBOUNDED

clockStep : ClockStep

Determines if calls to Clock#tick are frame dependent or system clock dependent. Changing this property to ClockStep.SYSTEM_CLOCK will set Clock#multiplier to 1.0, Clock#shouldAnimate to true, and Clock#currentTime to the current system clock time.
Default Value: ClockStep.SYSTEM_CLOCK_MULTIPLIER

currentTime : JulianDate

The current time. Changing this property will change Clock#clockStep from ClockStep.SYSTEM_CLOCK to ClockStep.SYSTEM_CLOCK_MULTIPLIER.

multiplier : Number

Gets or sets how much time advances when Clock#tick is called. Negative values allow for advancing backwards. If Clock#clockStep is set to ClockStep.TICK_DEPENDENT, this is the number of seconds to advance. If Clock#clockStep is set to ClockStep.SYSTEM_CLOCK_MULTIPLIER, this value is multiplied by the elapsed system time since the last call to Clock#tick. Changing this property will change Clock#clockStep from ClockStep.SYSTEM_CLOCK to ClockStep.SYSTEM_CLOCK_MULTIPLIER.
Default Value: 1.0

onTick : Event

An Event that is fired whenever Clock#tick is called.

shouldAnimate : Boolean

Indicates whether Clock#tick should attempt to advance time. The clock will only advance time when both Clock#canAnimate and Clock#shouldAnimate are true. Changing this property will change Clock#clockStep from ClockStep.SYSTEM_CLOCK to ClockStep.SYSTEM_CLOCK_MULTIPLIER.
Default Value: true

startTime : JulianDate

The start time of the clock.

stopTime : JulianDate

The stop time of the clock.

Methods

tick()JulianDate

Advances the clock from the current time based on the current configuration options. tick should be called every frame, regardless of whether animation is taking place or not. To control animation, use the Clock#shouldAnimate property.
Returns:
The new value of the Clock#currentTime property.