TimeIntervalCollection

new Cesium.TimeIntervalCollection(intervals)

一个由 TimeInterval 实例组成的、按起始时间排序的非重叠集合。
Name Type Description
intervals Array.<TimeInterval> optional 要添加到集合中的区间数组。

Members

获取在时间间隔集合发生变化时引发的事件。
获取集合是否为空。

readonly isStartIncluded : boolean

获取起始时间是否包含在集合中。

readonly isStopIncluded : boolean

获取结束时间是否包含在集合中。
获取集合中区间的数量。
获取集合的起始时间。
获取集合的结束时间。

Methods

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

ISO 8601 时间间隔(start/end/duration)创建一个新实例。
Name Type Description
options object Object with the following properties:
Name Type Default Description
iso8601 string 一个 ISO 8601 区间。
isStartIncluded boolean true optional true 表示起始时间包含在区间内,否则为 false
isStopIncluded boolean true optional true 表示结束时间包含在区间内,否则为 false
leadingInterval boolean false optional true 表示要从 Iso8601.MINIMUM_VALUE 到起始时间添加一个区间,否则为 false
trailingInterval boolean false optional true 表示要从结束时间到 Iso8601.MAXIMUM_VALUE 添加一个区间,否则为 false
dataCallback function optional 一个函数,它将在每个区间被添加到集合之前被调用并返回数据。如果未指定,则数据将是集合中的索引。
result TimeIntervalCollection optional 用于存放结果的现有实例。
Returns:
修改后的 result 参数,如果未提供则为新实例。

static Cesium.TimeIntervalCollection.fromIso8601DateArray(options, result)TimeIntervalCollection

ISO 8601 日期数组创建一个新实例。
Name Type Description
options object Object with the following properties:
Name Type Default Description
iso8601Dates Array.<string> 一个 ISO 8601 日期数组。
isStartIncluded boolean true optional true 表示起始时间包含在区间内,否则为 false
isStopIncluded boolean true optional true 表示结束时间包含在区间内,否则为 false
leadingInterval boolean false optional true 表示要从 Iso8601.MINIMUM_VALUE 到起始时间添加一个区间,否则为 false
trailingInterval boolean false optional true 表示要从结束时间到 Iso8601.MAXIMUM_VALUE 添加一个区间,否则为 false
dataCallback function optional 一个函数,它将在每个区间被添加到集合之前被调用并返回数据。如果未指定,则数据将是集合中的索引。
result TimeIntervalCollection optional 用于存放结果的现有实例。
Returns:
修改后的 result 参数,如果未提供则为新实例。

static Cesium.TimeIntervalCollection.fromIso8601DurationArray(options, result)TimeIntervalCollection

ISO 8601 持续时间数组创建一个新实例。
Name Type Description
options object Object with the following properties:
Name Type Default Description
epoch JulianDate 持续时间所相对的日期。
iso8601Durations string 一个 ISO 8601 持续时间数组。
relativeToPrevious boolean false optional true 表示持续时间相对于前一个日期,false 表示始终相对于纪元。
isStartIncluded boolean true optional true 表示起始时间包含在区间内,否则为 false
isStopIncluded boolean true optional true 表示结束时间包含在区间内,否则为 false
leadingInterval boolean false optional true 表示要从 Iso8601.MINIMUM_VALUE 到起始时间添加一个区间,否则为 false
trailingInterval boolean false optional true 表示要从结束时间到 Iso8601.MAXIMUM_VALUE 添加一个区间,否则为 false
dataCallback function optional 一个函数,它将在每个区间被添加到集合之前被调用并返回数据。如果未指定,则数据将是集合中的索引。
result TimeIntervalCollection optional 用于存放结果的现有实例。
Returns:
修改后的 result 参数,如果未提供则为新实例。

static Cesium.TimeIntervalCollection.fromJulianDateArray(options, result)TimeIntervalCollection

从 JulianDate 数组创建一个新实例。
Name Type Description
options object Object with the following properties:
Name Type Default Description
julianDates Array.<JulianDate> 一个 ISO 8601 日期数组。
isStartIncluded boolean true optional true 表示起始时间包含在区间内,否则为 false
isStopIncluded boolean true optional true 表示结束时间包含在区间内,否则为 false
leadingInterval boolean false optional true 表示要从 Iso8601.MINIMUM_VALUE 到起始时间添加一个区间,否则为 false
trailingInterval boolean false optional true 表示要从结束时间到 Iso8601.MAXIMUM_VALUE 添加一个区间,否则为 false
dataCallback function optional 一个函数,它将在每个区间被添加到集合之前被调用并返回数据。如果未指定,则数据将是集合中的索引。
result TimeIntervalCollection optional 用于存放结果的现有实例。
Returns:
修改后的 result 参数,如果未提供则为新实例。

addInterval(interval, dataComparer)

向集合添加一个区间,合并包含相同数据的区间,并根据需要拆分包含不同数据的区间,以维护一个非重叠的集合。新区间中的数据优先于集合中任何已有的区间。
Name Type Description
interval TimeInterval 要添加的区间。
dataComparer TimeInterval.DataComparer optional 一个比较两个区间数据的函数。如果省略,则使用引用相等性。

contains(julianDate)boolean

检查指定日期是否在此集合内。
Name Type Description
julianDate JulianDate 要检查的日期。
Returns:
true 表示集合包含指定日期,否则为 false

equals(right, dataComparer)boolean

将此实例与提供的实例按分量进行比较,如果它们相等则返回 true,否则返回 false
Name Type Description
right TimeIntervalCollection optional 右侧集合。
dataComparer TimeInterval.DataComparer optional 一个比较两个区间数据的函数。如果省略,则使用引用相等性。
Returns:
true 表示它们相等,否则为 false

findDataForIntervalContainingDate(date)object

查找并返回包含指定日期的区间的数据。
Name Type Description
date JulianDate 要搜索的日期。
Returns:
包含指定日期的区间的数据;如果不存在这样的区间,则为 undefined
返回集合中第一个与指定参数匹配的区间。所有参数都是可选的,undefined 参数被视为“不关心”条件。
Name Type Description
options object optional Object with the following properties:
Name Type Description
start JulianDate optional 区间的起始时间。
stop JulianDate optional 区间的结束时间。
isStartIncluded boolean optional true 表示 options.start 包含在区间内,否则为 false
isStopIncluded boolean optional true 表示 options.stop 包含在区间内,否则为 false
Returns:
集合中第一个与指定参数匹配的区间。

findIntervalContainingDate(date)TimeInterval|undefined

查找并返回包含指定日期的区间。
Name Type Description
date JulianDate 要搜索的日期。
Returns:
包含指定日期的区间;如果不存在这样的区间,则为 undefined
获取指定索引处的区间。
Name Type Description
index number 要检索的区间的索引。
Returns:
指定索引处的区间;如果该索引处没有区间,则为 undefined
查找并返回集合中包含指定日期的区间的索引。
Name Type Description
date JulianDate 要搜索的日期。
Returns:
包含指定日期的区间的索引;如果不存在这样的区间,则返回一个负数,该负数是下一个在指定日期之后开始的区间索引的按位补码;如果没有区间在指定日期之后开始,则为集合长度的按位补码。

intersect(other, dataComparer, mergeCallback)TimeIntervalCollection

创建一个新实例,它是此集合与提供的集合的交集。
Name Type Description
other TimeIntervalCollection 要取交集的集合。
dataComparer TimeInterval.DataComparer optional 一个比较两个区间数据的函数。如果省略,则使用引用相等性。
mergeCallback TimeInterval.MergeCallback optional 一个合并两个区间数据的函数。如果省略,将使用左侧区间的数据。
Returns:
一个新的 TimeIntervalCollection,它是此集合与提供的集合的交集。
从集合中移除所有区间。

removeInterval(interval)boolean

从此区间集合中移除指定的区间,在指定区间上创建一个空洞。输入区间的 data 属性将被忽略。
Name Type Description
interval TimeInterval 要移除的区间。
Returns:
true 表示区间已被移除,false 表示集合中没有该区间的任何部分。
需要帮助?获取答案的最快方式是在 Cesium 论坛 上向社区和团队提问。