SampledProperty

new LSGlobe.SampledProperty (type, derivativeTypes )

一个 Property ,其值从提供了一组样本以及指定的插值算法和度。
Name Type Description
type Number | Packable 属性的类型。
derivativeTypes Array.< Packable > 可选 提供时,表示样本将包含指定类型的派生信息。
Examples:
//Create a linearly interpolated Cartesian2
var property = new LSGlobe.SampledProperty(LSGlobe.Cartesian2);

//Populate it with data
property.addSample(LSGlobe.JulianDate.fromIso8601('2012-08-01T00:00:00.00Z'), new LSGlobe.Cartesian2(0, 0));
property.addSample(LSGlobe.JulianDate.fromIso8601('2012-08-02T00:00:00.00Z'), new LSGlobe.Cartesian2(4, 7));

//Retrieve an interpolated value
var result = property.getValue(LSGlobe.JulianDate.fromIso8601('2012-08-01T12:00:00.00Z'));
//Create a simple numeric SampledProperty that uses third degree Hermite Polynomial Approximation
var property = new LSGlobe.SampledProperty(Number);
property.setInterpolationOptions({
    interpolationDegree : 3,
    interpolationAlgorithm : LSGlobe.HermitePolynomialApproximation
});

//Populate it with data
property.addSample(LSGlobe.JulianDate.fromIso8601('2012-08-01T00:00:00.00Z'), 1.0);
property.addSample(LSGlobe.JulianDate.fromIso8601('2012-08-01T00:01:00.00Z'), 6.0);
property.addSample(LSGlobe.JulianDate.fromIso8601('2012-08-01T00:02:00.00Z'), 12.0);
property.addSample(LSGlobe.JulianDate.fromIso8601('2012-08-01T00:03:30.00Z'), 5.0);
property.addSample(LSGlobe.JulianDate.fromIso8601('2012-08-01T00:06:30.00Z'), 2.0);

//Samples can be added in any order.
property.addSample(LSGlobe.JulianDate.fromIso8601('2012-08-01T00:00:30.00Z'), 6.2);

//Retrieve an interpolated value
var result = property.getValue(LSGlobe.JulianDate.fromIso8601('2012-08-01T00:02:34.00Z'));
See:

Members

backwardExtrapolationDuration : Number

获取或设置向后推断的时间在属性变为未定义之前。值为0将永远外推。
Default Value: 0
获取或设置在值时执行的推断类型要求在任何可用样品之前一次提出。
Default Value: ExtrapolationType.NONE
获取每当此属性的定义更改时引发的事件。如果对getValue的调用返回,则认为定义已更改同一时间的结果不同。
获取此属性使用的派生类型。

forwardExtrapolationDuration : Number

获取或设置要向前推算的时间量该属性变为未定义。值为0将永远外推。
Default Value: 0
获取或设置在值时执行的推断类型每次提供任何可用样品后,均要求提供。
Default Value: ExtrapolationType.NONE
获取检索值时要使用的插值算法。
Default Value: LinearApproximation

interpolationDegree : Number

获取检索值时要执行的插值度。
Default Value: 1

readonly isConstant : Boolean

获取一个值,该值指示此属性是否恒定。考虑财产如果getValue对于当前定义始终返回相同的结果,则为常数。
获取属性的类型。

Methods

addSample (time, value, derivatives )

添加一个新样本。
Name Type Description
time JulianDate 采样时间。
value Packable 提供的时间的值。
derivatives Array.< Packable > 可选 在指定时间的导数数组。

addSamples (times, values, derivativeValues )

添加样本数组。
Name Type Description
times Array.< JulianDate > JulianDate实例的数组,其中每个索引都是采样时间。
values Array.< Packable > 值数组,其中每个值都对应于所提供的时间索引。
derivativeValues Array.<Array> 可选 一个数组,其中每个项目都是等效时间索引处的导数数组。
Throws:

addSamplesPackedArray (packedSamples, epoch )

将样本添加为单个打包数组,其中每个新样本均表示为日期,然后是相应值和衍生产品的打包表示形式。
Name Type Description
packedSamples Array.<Number> 包装好的样品阵列。
epoch JulianDate 可选 如果packedSamples中的任何日期都是数字,则将它们视为该时期的偏移量(以秒为单位)。

equals ( other ) Boolean

将此属性与提供的属性进行比较并返回如果相等,则为 true ,否则为 false
Name Type Description
other Property 可选 另一个属性。
Returns:
真正 如果左右相等 除此以外。

getValue (time, result ) Object

在提供的时间获取属性的值。
Name Type Description
time JulianDate 检索值的时间。
result Object 可选 将值存储到的对象(如果省略)将创建并返回一个新实例。
Returns:
修改后的结果参数;如果未提供结果参数,则为新实例。

removeSample (time) Boolean

在给定时间删除样本(如果有)。
Name Type Description
time JulianDate 采样时间。
Returns:
真正 如果一次移除了一个样本, 除此以外。
删除给定时间间隔内的所有样本。
Name Type Description
time TimeInterval 删除所有样本的时间间隔。

setInterpolationOptions ( options )

设置插值时要使用的算法和度数。
Name Type Description
options Object 可选 具有以下属性的对象:
名称 类型 说明
interpolationAlgorithm InterpolationAlgorithm 可选 新的插值算法。如果未定义,则现有属性将保持不变。
interpolationDegree 数字 可选 新的插值度。如果未定义,则现有属性将保持不变。