用于管理时间区间集合
按开始时间排序的
TimeInterval 实例的非重叠集合。
| Name | Type | Description |
|---|---|---|
intervals |
Array.<TimeInterval> | optional 要添加到集合中的间隔数组。 |
Members
-
readonlychangedEvent : Event
-
获取每当时间间隔集合发生变化时引发的事件。
-
获取集合是否为空。
-
获取开始时间是否包含在集合中。
-
获取集合中是否包含停止时间。
-
获取集合中的区间数。
-
readonlystart : JulianDate
-
获取集合的开始时间。
-
readonlystop : JulianDate
-
获取集合的停止时间。
Methods
-
staticSuperMap3D.TimeIntervalCollection.fromIso8601(result) → TimeIntervalCollection
-
根据 ISO 8601 时间间隔(开始/结束/持续时间)创建新实例。
Name Type Default Description options.iso8601String ISO8601时间间隔。 options.isStartIncludedBoolean trueoptional 如果开始时间包含在时间间隔内,则为 true,否则为 false。 options.isStopIncludedBoolean trueoptional 如果时间间隔包含停止时间,则为 true,否则为 false。 options.leadingIntervalBoolean falseoptional 如果要从 Iso8601.MINIMUM_VALUE 开始添加时间间隔,则为 true;否则为 false。 options.trailingIntervalBoolean falseoptional 如果要在Iso8601中添加停止时间间隔,则为true。MAXIMUM_VALUE,否则为false。 options.dataCallbackfunction optional 一个函数,它将返回每个间隔被调用的数据,然后将其添加到集合中。如果未指定,则该数据将是集合中的索引。 resultTimeIntervalCollection optional 结果要使用的现有实例。 Returns:
修改后的结果参数,或一个新实例(如果没有提供)。 -
staticSuperMap3D.TimeIntervalCollection.fromIso8601DateArray(result) → TimeIntervalCollection
-
从 ISO 8601 日期数组创建新实例。
Name Type Default Description options.iso8601DatesArray.<String> ISO8601日期数组。 options.isStartIncludedBoolean trueoptional 如果开始时间包含在时间间隔内,则为 true,否则为 false。 options.isStopIncludedBoolean trueoptional 如果时间间隔包含停止时间,则为 true,否则为 false。 options.leadingIntervalBoolean falseoptional 如果要从 Iso8601.MINIMUM_VALUE 开始添加时间间隔,则为 true;否则为 false。 options.trailingIntervalBoolean falseoptional 如果要在Iso8601中添加停止时间间隔,则为true。MAXIMUM_VALUE,否则为false。 options.dataCallbackfunction optional 一个函数,它将返回每个间隔被调用的数据,然后将其添加到集合中。如果未指定,则该数据将是集合中的索引。 resultTimeIntervalCollection optional 结果要使用的现有实例。 Returns:
修改后的结果参数,或一个新实例(如果没有提供)。 -
staticSuperMap3D.TimeIntervalCollection.fromIso8601DurationArray(result) → TimeIntervalCollection
-
从 ISO 8601 时长数组创建新实例。
Name Type Default Description options.epochJulianDate 持续时间的相对日期。 options.iso8601DurationsString ISO8601日期数组。 options.relativeToPreviousBoolean falseoptional 如果持续时间相对于前一个日期为True,如果始终相对于epoch为false。 options.isStartIncludedBoolean trueoptional 如果开始时间包含在时间间隔内,则为 true,否则为 false。 options.isStopIncludedBoolean trueoptional 如果时间间隔包含停止时间,则为 true,否则为 false。 options.leadingIntervalBoolean falseoptional 如果要从 Iso8601.MINIMUM_VALUE 开始添加时间间隔,则为 true;否则为 false。 options.trailingIntervalBoolean falseoptional 如果要在Iso8601中添加停止时间间隔,则为true。MAXIMUM_VALUE,否则为false。 options.dataCallbackfunction optional 一个函数,它将返回每个间隔被调用的数据,然后将其添加到集合中。如果未指定,则该数据将是集合中的索引。 resultTimeIntervalCollection optional 结果要使用的现有实例。 Returns:
修改后的结果参数,或一个新实例(如果没有提供)。 -
staticSuperMap3D.TimeIntervalCollection.fromJulianDateArray(result) → TimeIntervalCollection
-
从 JulianDate 数组创建一个新实例。
Name Type Default Description options.julianDatesArray.<JulianDate> ISO 8601 日期数组。 options.isStartIncludedBoolean trueoptional true,否则为 false。 options.isStopIncludedBoolean trueoptional 如果时间间隔包含停止时间,则为 true,否则为 false。 options.leadingIntervalBoolean falseoptional 如果要从 Iso8601.MINIMUM_VALUE 开始添加时间间隔,则为 true;否则为 false。 options.trailingIntervalBoolean falseoptional 如果要添加从停止时间到 Iso8601.MAXIMUM_VALUE 的时间间隔,则为 true,否则为 false。 options.dataCallbackfunction optional 一个函数,用于返回每个间隔被添加到集合之前调用的数据。如果未指定,数据将是集合中的索引。 resultTimeIntervalCollection optional 结果要使用的现有实例。 Returns:
修改后的结果参数,或一个新实例(如果没有提供)。 -
向集合中添加区间,合并包含相同数据的区间,并根据需要拆分包含不同数据的区间,以保持集合不重叠。新区间中的数据优先于集合中的任何现有区间。
Name Type Description intervalTimeInterval 添加时间间隔。 dataComparerTimeInterval~DataComparer optional 比较两个区间数据的函数。 如果省略,则使用参照相等。 -
检查指定日期是否在此集合内。
Name Type Description julianDateJulianDate 要检查的日期。 Returns:
如果集合包含指定日期,则为 true,否则为 false。 -
将此实例与提供的实例以组件方式进行比较,如果它们相等,则返回
true,否则返回false。Name Type Description rightTimeIntervalCollection optional 一侧的集合。 dataComparerTimeInterval~DataComparer optional 比较两个区间数据的函数。 如果省略,则使用参照相等。 Returns:
如果相等,则为True,否则为false。 -
查找并返回包含指定日期的区间数据。
Name Type Description dateJulianDate 要搜索的日期。 Returns:
包含指定日期的区间的数据,如果不存在此类区间,则为undefined数据。 -
findInterval() → TimeInterval
-
返回集合中第一个符合指定参数的区间。
Name Type Description options.startJulianDate optional 时间间隔的开始时间。 options.stopJulianDate optional 时间间隔的结束时间。 options.isStartIncludedBoolean optional 如果options.start包含在区间内,则为 true,否则为 false。 options.isStopIncludedBoolean optional 如果options.stop包含在区间内,则为 true,否则为 false。 Returns:
集合中第一个符合指定参数的区间。 -
findIntervalContainingDate(date) → TimeInterval|undefined
-
查找并返回包含指定日期的时间间隔。
Name Type Description dateJulianDate 要搜索的日期。 Returns:
包含指定日期的时间间隔,undefined(如果不存在这样的时间间隔)。 -
get(index) → TimeInterval
-
获取指定索引处的间隔。
Name Type Description indexNumber 要检索的区间的索引。 Returns:
指定索引处的区间,或者undefined(如果该索引处不存在区间)。 -
查找并返回集合中包含指定日期的区间索引。
Name Type Description dateJulianDate 要搜索的日期。 Returns:
包含指定日期的区间的索引,如果不存在这样的区间,则返回一个负数,该负数是该日期后开始的下一个区间的索引的比特补码,如果指定日期后没有区间开始,则返回集合长度的比特补码。 -
intersect(other, dataComparer, mergeCallback) → TimeIntervalCollection
-
创建一个新实例,该实例是本集合和提供的集合的交集。
Name Type Description otherTimeIntervalCollection 与之相交的集合。 dataComparerTimeInterval~DataComparer optional 比较两个区间数据的函数。 如果省略,则使用参照相等。 mergeCallbackTimeInterval~MergeCallback optional 合并两个区间数据的函数。如果省略,则使用左侧区间的数据。 Returns:
一个新的 TimeIntervalCollection,它是此集合和提供的集合的交集。 -
从集合中删除所有区间。
-
从这个间隔集合中移除指定的间隔,覆盖指定的间隔创建一个空洞。输入间隔的数据属性被忽略。
Name Type Description intervalTimeInterval 要删除的间隔时间。 Returns:
如果间隔已被删除,则为 true;如果区间的任何部分都不在集合中,则为 false。
