Time 时间
Cesium 使用儒略日期作为系统时间的表示,其类型为 JulianDate,它是自 4712 年 1 月 1 日(公元前 4713 年)正午以来的天数。为了提高精度,该类存储的日期部分和秒数部分是分开的。并且为了算术安全和表示 闰秒,该日期始终存储在国际原子时间标准中 (TimeStandard.TAI)
julianDayNumber 是指整数天,因为是从公元前 4713 年开始计数的,所以这个数可能会很大;
secondsOfDay 是指这一天过了多少秒;
timeStandard 是指所用时间的标准,Cesium 中主要有两种 Cesium.TimeStandard.TAI(国际原子时间标准)和 Cesium.TimeStandard.UTC(协调世界时时间标准,这和 js 中的时间标准是一样的)。
时间标准
定义
TAI(International Atomic Time, 国际原子时) 由世界各地约 400 台原子钟计算出的高精度时间标准,不考虑地球自转的变化,始终是稳定的。
UTC(Coordinated Universal Time, 协调世界时) 以 TAI 为基础,但会定期加入闰秒,以保持与地球自转(天文时)的大致同步。
时间偏差
TAI 比 UTC 恒定快,并且由于闰秒的加入,TAI 和 UTC 之间的时差会不断增加。
- 1972 年,TAI 与 UTC 的差值被固定为 10 秒。
- 之后,每当 UTC 添加 1 个闰秒,TAI 和 UTC 的差值就会增加 1 秒。
- 截至 2024 年 2 月,TAI 比 UTC 快 37 秒(TAI = UTC + 37 秒)。
闰秒
- TAI 没有闰秒,时间流逝是连续的。
- UTC 由于地球自转变慢,会不定期添加闰秒(通常在 6 月 30 日或 12 月 31 日)。
用途
- TAI 主要用于高精度的科学研究、卫星导航(如 GPS 内部时间基准)等。
- UTC 用于全球日常时间标准,如互联网时间同步(NTP)、航空、金融等。
因为北京时间是东八区区时,所以会比 Cesium 系统上的时间早八个小时。
时间转换
JulianDate 类提供了相关方法进行时间的计算和转换。
