getNearbyLandmarks method

Map<String, List<Landmark>> getNearbyLandmarks(
  1. RaliPosition point,
  2. double radiusMeters
)

Gets nearby landmarks within radius

Implementation

Map<String, List<Landmark>> getNearbyLandmarks(RaliPosition point, double radiusMeters) {
  if (landmarks == null) return {};

  final nearby = <String, List<Landmark>>{};
  landmarks!.forEach((category, categoryLandmarks) {
    final nearbyInCategory = categoryLandmarks.where((landmark) {
      final distance = landmark.location.distanceTo(point);
      return distance <= radiusMeters;
    }).toList();

    if (nearbyInCategory.isNotEmpty) {
      nearby[category] = nearbyInCategory;
    }
  });

  return nearby;
}