SampledPositionProperty - Cesium Documentation

# SampledPositionProperty

#### new SampledPositionProperty(referenceFrame, numberOfDerivatives)

  A `SampledProperty` which is also a `PositionProperty`.

  Name | Type | Default | Description
  --- | --- | --- | ---
  `referenceFrame` | ReferenceFrame | `ReferenceFrame.FIXED` | optional The reference frame in which the position is defined.
  `numberOfDerivatives` | Number | `0` | optional The number of derivatives that accompany each position; i.e. velocity, acceleration, etc...

  Source: DataSources/SampledPositionProperty.js, line 35

### Members

#### backwardExtrapolationDuration :Number

  Gets or sets the amount of time to extrapolate backward before the property becomes undefined. A value of 0 will extrapolate forever.
  Default Value: `0`
  Source: DataSources/SampledPositionProperty.js, line 183

#### backwardExtrapolationType :ExtrapolationType

  Gets or sets the type of extrapolation to perform when a value is requested at a time before any available samples.
  Default Value: `ExtrapolationType.NONE`
  Source: DataSources/SampledPositionProperty.js, line 168

#### readonlydefinitionChanged :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.
  Source: DataSources/SampledPositionProperty.js, line 79

#### forwardExtrapolationDuration :Number

  Gets or sets the amount of time to extrapolate forward before the property becomes undefined. A value of 0 will extrapolate forever.
  Default Value: `0`
  Source: DataSources/SampledPositionProperty.js, line 153

#### forwardExtrapolationType :ExtrapolationType

  Gets or sets the type of extrapolation to perform when a value is requested at a time after any available samples.
  Default Value: `ExtrapolationType.NONE`
  Source: DataSources/SampledPositionProperty.js, line 138

#### interpolationAlgorithm :InterpolationAlgorithm

  Gets the interpolation algorithm to use when retrieving a value.
  Default Value: `LinearApproximation`
  Source: DataSources/SampledPositionProperty.js, line 114

#### interpolationDegree :Number

  Gets the degree of interpolation to perform when retrieving a value.
  Default Value: `1`
  Source: DataSources/SampledPositionProperty.js, line 102

#### readonlyisConstant :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.
  Source: DataSources/SampledPositionProperty.js, line 65

#### numberOfDerivatives :Boolean

  The number of derivatives contained by this property; i.e. 0 for just position, 1 for velocity, etc.
  Default Value: `false`
  Source: DataSources/SampledPositionProperty.js, line 126

#### referenceFrame :ReferenceFrame

  Gets the reference frame in which the position is defined.
  Default Value: `ReferenceFrame.FIXED;`
  Source: DataSources/SampledPositionProperty.js, line 90

### Methods

#### addSample(time, position, derivatives)

  Adds a new sample.

  Name | Type | Description
  --- | --- | ---
  `time` | JulianDate | The sample time.
  `position` | Cartesian3 | The position at the provided time.
  `derivatives` | Array.<Cartesian3> | optional The array of derivative values at the provided time.

  Source: DataSources/SampledPositionProperty.js, line 247

#### addSamples(times, positions, derivatives)

  Adds multiple samples via parallel arrays.

  Name | Type | Description
  --- | --- | ---
  `times` | Array.<JulianDate> | An array of JulianDate instances where each index is a sample time.
  `positions` | Array.<Cartesian3> | An array of Cartesian3 position instances, where each value corresponds to the provided time index.
  `derivatives` | Array.<Array> | optional An array where each value is another array containing derivatives for the corresponding time index.

  ##### Throws:

  - DeveloperError : All arrays must be the same length.
  Source: DataSources/SampledPositionProperty.js, line 266

#### 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 and derivatives.

  Name | Type | Description
  --- | --- | ---
  `packedSamples` | Array.<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.

  Source: DataSources/SampledPositionProperty.js, line 277

#### 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.
  Source: DataSources/SampledPositionProperty.js, line 288

#### getValue(time, result) → Cartesian3

  Gets the position at the provided time.

  Name | Type | Description
  --- | --- | ---
  `time` | JulianDate | The time for which to retrieve the value.
  `result` | Cartesian3 | 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.
  Source: DataSources/SampledPositionProperty.js, line 200

#### getValueInReferenceFrame(time, referenceFrame, result) → Cartesian3

  Gets the position at the provided time and in the provided reference frame.

  Name | Type | Description
  --- | --- | ---
  `time` | JulianDate | The time for which to retrieve the value.
  `referenceFrame` | ReferenceFrame | The desired referenceFrame of the result.
  `result` | Cartesian3 | 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.
  Source: DataSources/SampledPositionProperty.js, line 212

#### setInterpolationOptions(options)

  Sets the algorithm and degree to use when interpolating a position.

  Name | Type | Description
  --- | --- | ---

  `options`

  Object

  optional Object with the following properties:

  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.

  Source: DataSources/SampledPositionProperty.js, line 236