表示julian,即从公元前4712年(4713年)1月1日中午开始的天数。
为了提高精度,该类将日期的整数部分和日期的秒部分存储在单独的组件中。为了保证算术安全并表示闰秒,日期总是存储在国际原子时间标准
TimeStandard.TAI
中。
Name | Type | Default | Description |
---|---|---|---|
julianDayNumber |
Number |
0.0
|
optional 代表整日数的julian日数。小数日也会被正确处理。 |
secondsOfDay |
Number |
0.0
|
optional 当前julian日数的秒数。小数秒、负数秒和大于一天的秒都会被正确处理。 |
timeStandard |
TimeStandard |
TimeStandard.UTC
|
optional 定义前两个参数的时间标准。 |
Members
-
staticSuperMap3D.JulianDate.leapSeconds : Array.<LeapSecond>
-
获取或设置 SuperMap3D 中使用的闰秒列表。
-
获取或设置整日数。
-
获取或设置当前日期的秒数。
Methods
-
staticSuperMap3D.JulianDate.addDays(julianDate, days, result) → JulianDate
-
将提供的天数添加到提供的日期实例中。
Name Type Description julianDate
JulianDate 日期。 days
Number 要添加或减少的天数。 result
JulianDate 结果要使用的现有实例。 Returns:
修改后的结果参数。 -
staticSuperMap3D.JulianDate.addHours(julianDate, hours, result) → JulianDate
-
将提供的小时数添加到提供的日期实例中。
Name Type Description julianDate
JulianDate 日期。 hours
Number 要添加或减少的小时数。 result
JulianDate 结果要使用的现有实例。 Returns:
修改后的结果参数。 -
staticSuperMap3D.JulianDate.addMinutes(julianDate, minutes, result) → JulianDate
-
将提供的分钟数添加到提供的日期实例中。
Name Type Description julianDate
JulianDate 日期。 minutes
Number 要添加或减少的分钟数。 result
JulianDate 结果要使用的现有实例。 Returns:
修改后的结果参数。 -
staticSuperMap3D.JulianDate.addSeconds(julianDate, seconds, result) → JulianDate
-
将提供的秒数添加到提供的日期实例中。
Name Type Description julianDate
JulianDate 日期。 seconds
Number 要添加或减少的秒数。 result
JulianDate 要用于结果的现有实例。 Returns:
修改后的结果参数。 -
staticSuperMap3D.JulianDate.clone(julianDate, result) → JulianDate
-
复制一个JulianDate实例。
Name Type Description julianDate
JulianDate 复制的日期。 result
JulianDate optional 要用于结果的现有实例。 Returns:
修改后的结果参数,如果没有提供,则为新实例。如果julianDate未定义则返回未定义。 -
比较两个实例。
Name Type Description left
JulianDate 第一个实例。 right
JulianDate 第二个实例。 Returns:
如果左侧小于右侧,则为负值;如果左侧大于右侧,则为正值;如果左侧和右侧相等,则为零。 -
计算所提供实例比 UTC 提前的秒数。
Name Type Description julianDate
JulianDate 日期。 Returns:
所提供实例比 UTC 提前的秒数。 -
计算所提供实例之间的天数差。
Name Type Description left
JulianDate 第一个实例。 right
JulianDate 第二个实例。 Returns:
以天为单位,左侧减去右侧的差值。 -
比较两个实例,如果它们相等,则返回
true
,否则返回false
。Name Type Description left
JulianDate optional 第一个实例。 right
JulianDate optional 第二个实例。 Returns:
如果日期相等,则为 true;否则为 false -
比较两个实例,如果它们彼此在
epsilon
秒内,返回true
。 也就是说,为了使日期被认为是相等的(并且该函数返回true
),它们之间的差值的绝对值(以秒为单位)必须小于epsilon
。Name Type Description left
JulianDate optional 第一个实例。 right
JulianDate optional 第二个实例。 将两个实例分开的最大秒数。
Number Returns:
如果两个日期相差不超过ε秒,则为 true;否则为 false。 -
staticSuperMap3D.JulianDate.fromDate(date, result) → JulianDate
-
根据 JavaScript Date 创建一个新实例。
Name Type Description date
Date JavaScript 日期 result
JulianDate optional 用于结果的现有实例。 Returns:
修改后的结果参数,或一个新实例(如果没有提供)。Throws:
-
DeveloperError : 日期必须是有效的JavaScript日期。
-
-
staticSuperMap3D.JulianDate.fromGregorianDate(date, result) → JulianDate
-
根据 GregorianDate 创建一个新实例。
Name Type Description date
GregorianDate 公历日期。 result
JulianDate optional 用于结果的现有实例。 Returns:
修改后的结果参数,或一个新实例(如果没有提供)。Throws:
-
DeveloperError : 日期必须是有效的公历日期。
-
-
staticSuperMap3D.JulianDate.fromIso8601(iso8601String, result) → JulianDate
-
从日期为ISO 8601的日期创建一个新实例。此方法优于
Date。parse
,因为它将处理ISO 8601规范定义的所有有效格式,包括闰秒和亚毫秒时间,这是大多数JavaScript实现所丢弃的。Name Type Description iso8601String
String ISO 8601日期。 result
JulianDate optional 要用于结果的现有实例。 Returns:
修改后的结果参数,如果没有提供,则为新实例。Throws:
-
DeveloperError : 无效的ISO 8601日期。
-
-
比较所提供的实例,如果
left
晚于right
,则返回true,否则返回
false。
Name Type Description left
JulianDate 第一个实例。 right
JulianDate 第二个实例。 Returns:
如果left早于或晚于right,则为True,否则为false。 -
比较所提供的实例,如果
left
大于或等于right
,则返回true,否则返回
false。
Name Type Description left
JulianDate 第一个实例。 right
JulianDate 第二个实例。 Returns:
如果left大于或等于right,则为True,否则为false。 -
比较提供的实例,如果 left 早于 right,则返回 true,否则返回 false。
Name Type Description left
JulianDate 第一个实例。 right
JulianDate 第二个实例。 Returns:
如果left早于right,则为True,否则为false。 -
比较提供的实例,如果 left 早于或等于 right,则返回 true,否则返回 false。
Name Type Description left
JulianDate 第一个实例。 right
JulianDate 第二个实例。 Returns:
如果left早于或等于right,则为True,否则为false。 -
staticSuperMap3D.JulianDate.now(result) → JulianDate
-
创建表示当前系统时间的新实例。这相当于调用
JulianDate.fromDate(new Date());
。Name Type Description result
JulianDate optional 要用于结果的现有实例。 Returns:
修改后的结果参数,如果没有提供,则为新实例。 -
计算所提供实例之间的秒差。
Name Type Description left
JulianDate 第一个实例。 right
JulianDate 第二个实例。 Returns:
左减右时的差值(以秒为单位)。 -
从提供的实例创建一个JavaScript Date。 由于JavaScript日期只能精确到最近的毫秒,不能表示闰秒,因此可以考虑使用
JulianDate。toGregorianDate
。 如果提供的JulianDate在闰秒期间,则使用前一秒。Name Type Description julianDate
JulianDate 要转换的日期。 Returns:
表示所提供日期的新实例。 -
staticSuperMap3D.JulianDate.toGregorianDate(julianDate, result) → GregorianDate
-
从提供的实例创建一个
GregorianDate
。Name Type Description julianDate
JulianDate 要转换的日期。 result
GregorianDate optional 要用于结果的现有实例。 Returns:
修改后的结果参数,如果没有提供,则为新实例。 -
创建所提供日期的ISO8601表示。
Name Type Description julianDate
JulianDate 要转换的日期。 precision
Number optional 用于表示秒分量的小数位数。默认情况下,使用最精确的表示。 Returns:
所提供日期的ISO8601表示。 -
计算所提供实例代表的整日和小数日总数。
Name Type Description julianDate
JulianDate 日期。 Returns:
单浮点数形式的Julian日期。 -
clone(result) → JulianDate
-
复制此实例。
Name Type Description result
JulianDate optional 结果要使用的现有实例。 Returns:
修改后的结果参数,或一个新实例(如果没有提供)。 -
比较它和提供的实例,如果它们相等,则返回
true
,否则返回false
。Name Type Description right
JulianDate optional 第二个实例。 Returns:
如果日期相等,则为 true;否则为 false。 -
比较它和提供的实例,如果它们在
epsilon
秒内,则返回true
。 也就是说,为了使日期被认为是相等的(并且该函数返回true
),它们之间的差值的绝对值(以秒为单位)必须小于epsilon
。Name Type Description right
JulianDate optional 第二个实例。 epsilon
Number 两个实例之间的最大间隔秒数。 Returns:
如果两个日期相差不超过ε秒,则为 true;否则为 false。 -
以 ISO8601 格式创建表示该日期的字符串。
Returns:
用 ISO8601 格式表示该日期的字符串。