function CallbackPositionProperty(callback, isConstant, referenceFrame) {
  this._callback = undefined;
  this._isConstant = undefined;
  this._referenceFrame = referenceFrame ?? ReferenceFrame.FIXED;
  this._definitionChanged = new Event();
  this.setCallback(callback, isConstant);
}
A {@link PositionProperty} whose value is lazily evaluated by a callback function.

@alias CallbackPositionProperty
@constructor

@param {CallbackPositionProperty.Callback} callback The function to be called when the position property is evaluated.
@param {boolean} isConstant <code>true</code> when the callback function returns the same value every time, <code>false</code> if the value will change.
@param {ReferenceFrame} [referenceFrame=ReferenceFrame.FIXED] The reference frame in which the position is defined.

@demo {@link https://sandcastle.cesium.com/index.html?src=Callback%20Position%20Property.html|Cesium Sandcastle Callback Position Property Demo}