haversineDistance static method

double haversineDistance(
  1. LatLng a,
  2. LatLng b
)

Returns the haversine distance in metres between a and b.

Implementation

static double haversineDistance(LatLng a, LatLng b) {
  final dLat = _toRad(b.latitude - a.latitude);
  final dLng = _toRad(b.longitude - a.longitude);
  final sinDLat = sin(dLat / 2);
  final sinDLng = sin(dLng / 2);
  final x = sinDLat * sinDLat +
      cos(_toRad(a.latitude)) * cos(_toRad(b.latitude)) * sinDLng * sinDLng;
  return _earthRadius * 2 * atan2(sqrt(x), sqrt(1 - x));
}