/// <summary> /// Set the location of this transform on the map to the specified latitude and longitude. /// </summary> /// <param name="latLong">The new position of the transform.</param> public void SetPosition(LatLong latLong) { m_positioner.SetPosition(latLong); }
/// <summary> /// Set the position of this transform to the specified point. /// </summary> /// <param name="latLong">The new position of the transform.</param> public void SetPosition(LatLong latLong) { SetPosition(latLong.ToECEF()); }
/// <summary> /// Get a bearing / direction between the current lat-long and the lat-long provided. /// </summary> /// <param name="toPoint">The point the returned bearing should point towards.</param> public double BearingTo(LatLong toPoint) { return(m_latLong.BearingTo(toPoint)); }
/// <summary> /// Creates an instance of the type. No conversion takes place since all values are stored as is. /// </summary> /// <param name="latitudeInDegrees">Latitude in degrees.</param> /// <param name="longitudeInDegrees">Longitude in degrees.</param> /// <param name="altitudeInMetres">Altitude in metres.</param> public LatLongAltitude(double latitudeInDegrees, double longitudeInDegrees, double altitudeInMetres) { m_latLong = new LatLong(latitudeInDegrees, longitudeInDegrees); m_altitude = altitudeInMetres; }
private static extern double EstimateGreatCircleDistance( ref LatLong a, ref LatLong b, double sphereRadius );
/// <summary> /// Estimates the length (in meters) of a great circle arc along the Earth's surface, between /// the two lat-longs provided. This does not take account of changes in surface altitude. /// </summary> /// <param name="a">The first of the points to find the distance between.</param> /// <param name="b">The second of the points to find the distance between.</param> /// <returns>The estimated distance between the two points, in meters.</returns> public static double EstimateGreatCircleDistance(LatLong a, LatLong b) { return(EstimateGreatCircleDistance(ref a, ref b, EarthConstants.Radius)); }