I’m trying to find a way to use a couple of Cesium.Clocks to control two simulation independently of the main viewer clock so that I can pause or speed up each simulation independent of each other (and independent of the sun position). Is there a way to get the viewer to call .tick() on several different clocks or is there another way to achieve what I’m trying to do?
I solved it by creating a list of clocks and then in the event handler for viewer.clock I loop though that list and call tick on each clock. I can then start and stop clocks by adding and removing clocks to that list.
Now, I am facing the same problem like you were. I have two animated trajectories triggered by two buttons. The trajectories were loaded by Cesium.CzmlDataSource (), and they both have different epoch times with same availability. Could you show a little more details on how you resolve with a list of clocks?
Here is my sequence:
Click Button1 => Trajectory1 animated and stayed on the map => worked as expected.
Click Button 2 => Trajectory2 animated and stayed on the map and Trajectory1 stayed on the map => worked as expected.
Click Button 1 again => Trajectory1 animated and stayed on the map [But] Trajectory2 disappeared => I want Trajectory2 stayed on the map