由开始和停止时间定义的间隔;可选择是否将这些时间包含在间隔内。
任意数据可以选择性地与每个实例关联,用于
TimeIntervalCollection。
| Name | Type | Description | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
optional
包含以下属性的对象:
|
Examples:
// 创建一个表示1980年8月1日的实例,并关联一个笛卡尔位置。
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)
});
// 从 ISO 8601 间隔创建两个实例,并关联数值数据
// 然后计算它们的交集,求和它们包含的数据。
const left = Cesium.TimeInterval.fromIso8601({
iso8601 : '2000/2010',
data : 2
});
const right = Cesium.TimeInterval.fromIso8601({
iso8601 : '1995/2005',
data : 3
});
// 下面的交集结果等价于
//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;
});
// 检查间隔是否包含特定时间。
const dateToCheck = Cesium.JulianDate.fromIso8601('1982-09-08T11:30:00Z');
const containsDate = Cesium.TimeInterval.contains(timeInterval, dateToCheck);
Members
static constant Cesium.TimeInterval.EMPTY : TimeInterval
一个不可空的空间隔。
获取或设置与此间隔关联的数据。
获取此间隔是否为空。
获取或设置开始时间是否包含在此间隔内。
-
Default Value:
true
获取或设置停止时间是否包含在此间隔内。
-
Default Value:
true
获取或设置此间隔的开始时间。
获取或设置此间隔的停止时间。
Methods
static Cesium.TimeInterval.clone(timeInterval, result) → TimeInterval
复制所提供的实例。
| Name | Type | Description |
|---|---|---|
timeInterval |
TimeInterval | optional 要克隆的实例。 |
result |
TimeInterval | optional 用于结果的现有实例。 |
Returns:
修改后的结果参数,如果未提供则返回新实例。
检查指定日期是否在所提供的间隔内。
| Name | Type | Description |
|---|---|---|
timeInterval |
TimeInterval | 间隔。 |
julianDate |
JulianDate | 要检查的日期。 |
Returns:
如果间隔包含指定日期则为
true,否则为 false。
比较两个实例,如果相等则返回
true,否则返回 false。
| Name | Type | Description |
|---|---|---|
left |
TimeInterval | optional 第一个实例。 |
right |
TimeInterval | optional 第二个实例。 |
dataComparer |
TimeInterval.DataComparer | optional 比较两个间隔数据的函数。如果省略,则使用引用相等性。 |
Returns:
如果日期相等则返回
true;否则返回 false。
比较两个实例,如果它们在彼此
epsilon 秒范围内则返回 true。
也就是说,为了使日期被视为相等(并让此函数返回 true),
它们之间以秒为单位的差的绝对值必须小于 epsilon。
| Name | Type | Default | Description |
|---|---|---|---|
left |
TimeInterval | optional 第一个实例。 | |
right |
TimeInterval | optional 第二个实例。 | |
epsilon |
number |
0
|
optional 应该分隔两个实例的最大秒数。 |
dataComparer |
TimeInterval.DataComparer | optional 比较两个间隔数据的函数。如果省略,则使用引用相等性。 |
Returns:
如果两个日期在彼此的
epsilon 秒范围内则返回 true;否则返回 false。
static Cesium.TimeInterval.fromIso8601(options, result) → TimeInterval
从 ISO 8601 间隔创建新实例。
| Name | Type | Description | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
object |
包含以下属性的对象:
|
||||||||||||||||||||
result |
TimeInterval | optional 用于结果的现有实例。 |
Returns:
修改后的结果参数,如果未提供则返回新实例。
Throws:
-
DeveloperError 如果 options.iso8601 不符合正确的格式。
static Cesium.TimeInterval.intersect(left, right, result, mergeCallback) → TimeInterval
计算两个间隔的交集,可选择合并它们的数据。
| Name | Type | Description |
|---|---|---|
left |
TimeInterval | 第一个间隔。 |
right |
TimeInterval | optional 第二个间隔。 |
result |
TimeInterval | optional 用于结果的现有实例。 |
mergeCallback |
TimeInterval.MergeCallback | optional 合并两个间隔数据的函数。如果省略,将使用左侧间隔的数据。 |
Returns:
修改后的结果参数。
创建所提供的间隔的 ISO8601 表示。
| Name | Type | Description |
|---|---|---|
timeInterval |
TimeInterval | 要转换的间隔。 |
precision |
number | optional 用于表示秒分量的小数位数。默认使用最精确的表示。 |
Returns:
所提供的间隔的 ISO8601 表示。
clone(result) → TimeInterval
复制此实例。
| Name | Type | Description |
|---|---|---|
result |
TimeInterval | optional 用于结果的现有实例。 |
Returns:
修改后的结果参数,如果未提供则返回新实例。
按组件方式将此实例与所提供的实例进行比较,
如果相等则返回
true,否则返回 false。
| Name | Type | Description |
|---|---|---|
right |
TimeInterval | optional 右侧间隔。 |
dataComparer |
TimeInterval.DataComparer | optional 比较两个间隔数据的函数。如果省略,则使用引用相等性。 |
Returns:
如果相等则返回
true,否则返回 false。
按组件方式将此实例与所提供的实例进行比较,
如果在提供的 epsilon 范围内则返回
true,
否则返回 false。
| Name | Type | Default | Description |
|---|---|---|---|
right |
TimeInterval | optional 右侧间隔。 | |
epsilon |
number |
0
|
optional 用于相等性测试的 epsilon。 |
dataComparer |
TimeInterval.DataComparer | optional 比较两个间隔数据的函数。如果省略,则使用引用相等性。 |
Returns:
如果在提供的 epsilon 范围内则返回
true,否则返回 false。
创建表示此 TimeInterval 的 ISO8601 格式的字符串。
Returns:
表示此 TimeInterval 的 ISO8601 格式的字符串。
Type Definitions
用于比较间隔数据的函数接口。
| Name | Type | Description |
|---|---|---|
leftData |
* | 第一个数据实例。 |
rightData |
* | 第二个数据实例。 |
Returns:
如果所提供的实例相等则为
true,否则为 false。
用于合并间隔数据的函数接口。
| Name | Type | Description |
|---|---|---|
leftData |
* | 第一个数据实例。 |
rightData |
* | 第二个数据实例。 |
Returns:
合并两个数据实例的结果。
