SampledProperty

new SampledProperty(type)

A Property whose value is interpolated for a given time from the provided set of samples and specified interpolation algorithm and degree.
Name Type Description
type Number | Object The type of property, which must be a Number or implement Packable.
Examples:
//Create a linearly interpolated Cartesian2
var property = new Cesium.SampledProperty(Cesium.Cartesian2);
property.interpolationDegree = 1;
property.interpolationAlgorithm = LinearApproximation;

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

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

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

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

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

Members

definitionChanged :Event

Gets the event that is raised whenever the definition of this property changes. The definition is considered to have changed if a call to getValue would return a different result for the same time.

interpolationAlgorithm :InterpolationAlgorithm

Gets the interpolation algorithm to use when retrieving a value.
Default Value: LinearApproximation

interpolationDegree :Number

Gets the degree of interpolation to perform when retrieving a value.
Default Value: 1

isConstant :Boolean

Gets a value indicating if this property is constant. A property is considered constant if getValue always returns the same result for the current definition.

type :Object

Gets the type of property.

Methods

addSample(time, value)

Adds a new sample
Name Type Description
time JulianDate The sample time.
value Object The value at the provided time.

addSamples(times, values)

Adds an array of samples
Name Type Description
times JulianDate[] An array of JulianDate instances where each index is a sample time.
values Packable[] The array of values, where each value corresponds to the provided times index.
Throws:

addSamplesPackedArray(packedSamples, epoch)

Adds samples as a single packed array where each new sample is represented as a date, followed by the packed representation of the corresponding value.
Name Type Description
packedSamples Number[] The array of packed samples.
epoch JulianDate optional If any of the dates in packedSamples are numbers, they are considered an offset from this epoch, in seconds.

equals(other)Boolean

Compares this property to the provided property and returns true if they are equal, false otherwise.
Name Type Description
other Property optional The other property.
Returns:
true if left and right are equal, false otherwise.

getValue(time, result)Object

Gets the value of the property at the provided time.
Name Type Description
time JulianDate The time for which to retrieve the value.
result Object optional The object to store the value into, if omitted, a new instance is created and returned.
Returns:
The modified result parameter or a new instance if the result parameter was not supplied.

setInterpolationOptions(options)

Sets the algorithm and degree to use when interpolating a value.
Name Type Description
options Object The options
Name Type Description
interpolationAlgorithm InterpolationAlgorithm optional The new interpolation algorithm. If undefined, the existing property will be unchanged.
interpolationDegree Number optional The new interpolation degree. If undefined, the existing property will be unchanged.