computeDistanceSphericalLawCosines function

num computeDistanceSphericalLawCosines(
  1. LatLng p1,
  2. LatLng p2, {
  3. num radius = earthRadius,
})

Compute distance between 2 points according to Spherical law of cosines.

Implementation

num computeDistanceSphericalLawCosines(
  LatLng p1,
  LatLng p2, {
  num radius = earthRadius,
}) {
  final cosLat1 = cos(degToRad(p1.lat));
  final sinLat1 = sin(degToRad(p1.lat));
  final cosLat2 = cos(degToRad(p2.lat));
  final sinLat2 = sin(degToRad(p2.lat));
  return radius *
      acos(cosLat1 * cosLat2 * cos(degToRad(p1.lng) - degToRad(p2.lng)) +
          sinLat1 * sinLat2);
}