TimeInterval

new Cesium.TimeInterval ( options )

由开始和停止时间定义的间隔;可选地包括这些时间作为间隔的一部分。可以选择将任意数据与每个实例关联以与 TimeIntervalCollection 一起使用。
Name Type Description
options Object 具有以下属性的 可选 对象:
姓名 类型 默认 描述
start 朱利安日期 new JulianDate() 可选 间隔的开始时间。
stop 朱利安日期 new JulianDate() 可选 间隔的停止时间。
isStartIncluded 布尔值 true 可选 如果 options.start 包含在区间中,则为 true ,否则为 false
isStopIncluded 布尔值 true 可选 如果 options.stop 包含在间隔中,则为 true ,否则为 false
data 目的 可选 与此间隔关联的任意数据。
Examples:
// Create an instance that spans August 1st, 1980 and is associated
// with a Cartesian position.
const timeInterval = new Cesium.TimeInterval({
    start : Cesium.JulianDate.fromIso8601('1980-08-01T00:00:00Z'),
    stop : Cesium.JulianDate.fromIso8601('1980-08-02T00:00:00Z'),
    isStartIncluded : true,
    isStopIncluded : false,
    data : Cesium.Cartesian3.fromDegrees(39.921037, -75.170082)
});
// Create two instances from ISO 8601 intervals with associated numeric data
// then compute their intersection, summing the data they contain.
const left = Cesium.TimeInterval.fromIso8601({
    iso8601 : '2000/2010',
    data : 2
});

const right = Cesium.TimeInterval.fromIso8601({
    iso8601 : '1995/2005',
    data : 3
});

//The result of the below intersection will be an interval equivalent to
//const intersection = Cesium.TimeInterval.fromIso8601({
//  iso8601 : '2000/2005',
//  data : 5
//});
const intersection = new Cesium.TimeInterval();
Cesium.TimeInterval.intersect(left, right, intersection, function(leftData, rightData) {
    return leftData + rightData;
});
// Check if an interval contains a specific time.
const dateToCheck = Cesium.JulianDate.fromIso8601('1982-09-08T11:30:00Z');
const containsDate = Cesium.TimeInterval.contains(timeInterval, dateToCheck);

Members

static constant Cesium.TimeInterval.EMPTY : TimeInterval

一个不可变的空区间。
获取或设置与此间隔关联的数据。

readonly isEmpty : Boolean

获取此间隔是否为空。

isStartIncluded : Boolean

获取或设置开始时间是否包含在此时间间隔内。
Default Value: true

isStopIncluded : Boolean

获取或设置停止时间是否包含在此时间间隔内。
Default Value: true
获取或设置此间隔的开始时间。
获取或设置此间隔的停止时间。

Methods

static Cesium.TimeInterval.clone ( timeInterval , result ) TimeInterval

复制提供的实例。
Name Type Description
timeInterval TimeInterval 可选 要克隆的实例。
result TimeInterval 可选 用于结果的现有实例。
Returns:
修改后的结果参数或新实例(如果没有提供)。

static Cesium.TimeInterval.contains (timeInterval, julianDate) Boolean

检查指定日期是否在提供的时间间隔内。
Name Type Description
timeInterval TimeInterval 间隔。
julianDate JulianDate 要检查的日期。
Returns:
如果间隔包含指定的日期,则为 true ,否则为 false

static Cesium.TimeInterval.equals ( left , right , dataComparer ) Boolean

比较两个实例,如果相等则返回 true ,否则返回 false
Name Type Description
left TimeInterval 可选 第一个实例。
right TimeInterval 可选 第二个实例。
dataComparer TimeInterval.DataComparer 可选 比较两个区间的数据的函数。如果省略,则使用引用相等。
Returns:
如果日期相等,则为 true ;否则, false

static Cesium.TimeInterval.equalsEpsilon ( left , right , epsilon , dataComparer ) Boolean

比较两个实例,如果它们在 epsilon 秒内,则返回 true 。也就是说,为了使日期被视为相等(并且此函数返回 true ),它们之间的差异的绝对值(以秒为单位)必须小于 epsilon
Name Type Default Description
left TimeInterval 可选 第一个实例。
right TimeInterval 可选 第二个实例。
epsilon Number 0 可选 应该分隔两个实例的最大秒数。
dataComparer TimeInterval.DataComparer 可选 比较两个区间的数据的函数。如果省略,则使用引用相等。
Returns:
如果两个日期在 epsilon 秒内,则为 true ;否则 false

static Cesium.TimeInterval.fromIso8601 (options, result ) TimeInterval

ISO 8601 间隔创建一个新实例。
Name Type Description
options Object 具有以下属性的对象:
姓名 类型 默认 描述
iso8601 细绳 ISO 8601 间隔。
isStartIncluded 布尔值 true 可选 如果 options.start 包含在区间中,则为 true ,否则为 false
isStopIncluded 布尔值 true 可选 如果 options.stop 包含在间隔中,则为 true ,否则为 false
data 目的 可选 与此间隔关联的任意数据。
result TimeInterval 可选 用于结果的现有实例。
Returns:
修改后的结果参数或新实例(如果没有提供)。
Throws:
  • 如果 options.iso8601 与正确的格式不匹配,则 DeveloperError。

static Cesium.TimeInterval.intersect (left, right , result , mergeCallback ) TimeInterval

计算两个区间的交集,可选择合并它们的数据。
Name Type Description
left TimeInterval 第一个间隔。
right TimeInterval 可选 第二个间隔。
result TimeInterval 可选 用于结果的现有实例。
mergeCallback TimeInterval.MergeCallback 可选 合并两个区间数据的函数。如果省略,将使用左侧区间的数据。
Returns:
修改后的结果参数。

static Cesium.TimeInterval.toIso8601 (timeInterval, precision ) String

创建所提供间隔的 ISO8601 表示。
Name Type Description
timeInterval TimeInterval 要转换的间隔。
precision Number 可选 用于表示秒组件的小数位数。默认情况下,使用最精确的表示。
Returns:
提供的间隔的 ISO8601 表示。
复制此实例。
Name Type Description
result TimeInterval 可选 用于结果的现有实例。
Returns:
修改后的结果参数或新实例(如果没有提供)。

equals ( right , dataComparer ) Boolean

将此实例与提供的实例组件进行比较,如果它们相等则返回 true ,否则返回 false
Name Type Description
right TimeInterval 可选 右手边的间隔。
dataComparer TimeInterval.DataComparer 可选 比较两个区间的数据的函数。如果省略,则使用引用相等。
Returns:
如果它们相等,则为 true ,否则为 false

equalsEpsilon ( right , epsilon , dataComparer ) Boolean

将此实例与提供的实例组件进行比较,如果它们在提供的 epsilon 内,则返回 true ,否则返回 false
Name Type Default Description
right TimeInterval 可选 右手边的间隔。
epsilon Number 0 可选 用于相等性测试的 epsilon。
dataComparer TimeInterval.DataComparer 可选 比较两个区间的数据的函数。如果省略,则使用引用相等。
Returns:
如果它们在提供的 epsilon 内,则为 true ,否则为 false

toString () String

创建一个以 ISO8601 格式表示此 TimeInterval 的字符串。
Returns:
以 ISO8601 格式表示此 TimeInterval 的字符串。

Type Definitions

Cesium.TimeInterval.DataComparer (leftData, rightData) Boolean

用于比较区间数据的函数接口。
Name Type Description
leftData * 第一个数据实例。
rightData * 第二个数据实例。
Returns:
如果提供的实例相等,则为 true ,否则为 false

Cesium.TimeInterval.MergeCallback (leftData, rightData) *

合并区间数据的函数接口。
Name Type Description
leftData * 第一个数据实例。
rightData * 第二个数据实例。
Returns:
合并两个数据实例的结果。