lib/core/utils/distance.dartDart
import 'dart:math';
class Distance {
/// Haversine distance in kilometers.
/// Formula and constants mirror the previously inlined implementation.
static double km(double lat1, double lon1, double lat2, double lon2) {
const double r = 6371; // Earth radius in km
final double dLat = _degToRad(lat2 - lat1);
final double dLon = _degToRad(lon2 - lon1);
final double a = sin(dLat / 2) * sin(dLat / 2) +
cos(_degToRad(lat1)) * cos(_degToRad(lat2)) *
sin(dLon / 2) * sin(dLon / 2);
final double c = 2 * atan2(sqrt(a), sqrt(1 - a));
return r * c;
}
static double _degToRad(double deg) => deg * (pi / 180);
}