注釈の配列があります。ユーザーの位置から各注釈間の距離を計算しています。知りたいのは、これらの距離から最も近い 3 つの注釈をどのように見つけることができるかということです。
ユーザーの場所から注釈までの距離を計算する方法は次のとおりです。
CLLocation *userLocation = self.mapView.userLocation.location;
for (Annotation *obj in annotations) {
CLLocation *loc = [[CLLocation alloc] initWithLatitude:obj.coordinate.latitude longitude:obj.coordinate.longitude];
// CLLocation *userLocation = [[CLLocation alloc] initWithLatitude:self.mapView.userLocation.coordinate.latitude longitude:self.mapView.userLocation.coordinate.longitude];
CLLocationDistance dist = [loc distanceFromLocation:userLocation];
int distance = dist;
NSLog(@"Distance from Annotations - %i", distance);
}