正如我们知道的js创建的Date对象是北京时间,但是与朱利安的日期是不同的,cesium中显示的时间与你设置的Date日期的时间是不同的两者差8个小时。(朱利安时间=UTC=GMT),北京时间=UTC+8=GMT+8
例如:date日期为:12:00:00,转为朱利安日期,显示在cesium时钟上,就会是04:00:00.所以你想让时钟显示12:00就需要在你想要显示时间的上面+8个小时,结果就是date日期设置为:20:00:00
代码:想让时钟显示 2017/10/20 13:30:00
var date1=new Date(2017,10,20,21,30,00);//时间为:2017/10/20 21:30:00
var julian_time=Cesium.JulianDate.fromDate(date1);//转为朱利安日期
//设置时钟的当前日期
viewer.clock.currentTime=julian_time.clone();//时钟上显示的时间为:2017/10/20 13:30:00
//如果保持北京时间和cesisum时间相同
var time_bj=new Date("2017/10/25 09:00:00");//北京时间
var utc=Cesium.JulianDate.fromDate(new Date("2017/10/25 09:00:00"));//UTC
viewer.clock.currentTime=Cesium.JulianDate.addHours(utc,8,new Cesium.JulianDate());//北京时间=UTC+8=GMT+8