function EllipsoidGeodesic(start, end, ellipsoid) {
  const e = ellipsoid ?? Ellipsoid.default;
  this._ellipsoid = e;
  this._start = new Cartographic();
  this._end = new Cartographic();

  this._constants = {};
  this._startHeading = undefined;
  this._endHeading = undefined;
  this._distance = undefined;
  this._uSquared = undefined;

  if (defined(start) && defined(end)) {
    computeProperties(this, start, end, e);
  }
}
Initializes a geodesic on the ellipsoid connecting the two provided planetodetic points.

@alias EllipsoidGeodesic
@constructor

@param {Cartographic} [start] The initial planetodetic point on the path.
@param {Cartographic} [end] The final planetodetic point on the path.
@param {Ellipsoid} [ellipsoid=Ellipsoid.default] The ellipsoid on which the geodesic lies.