Я обнаружил эту проблему с функцией distanceFromLocation, где возвращаемое значение не является точным.Пожалуйста, подтвердите, если я сделал это неправильно, или функция глючит.
CLLocation *locA = [[CLLocation alloc] initWithLatitude:5.321008 longitude:100.290131];
CLLocation *locB = [[CLLocation alloc] initWithLatitude:5.321008 longitude:100.290138];
CLLocationDistance distance = [locA distanceFromLocation:locB];
NSLog(@"distance: %f, locA: %f,%f, locB: %f,%f",distance,locA.coordinate.latitude,locA.coordinate.longitude,locB.coordinate.latitude,locB.coordinate.longitude);
Выход:
distance: 0.775644, locA: 5.321008,100.290131, locB: 5.321008,100.290138
Обе локации находятся рядом и должны быть менее 10 метровОднако функция возвращает большее расстояние.Проверяется с таким сайтом как http://jan.ucc.nau.edu/~cvm/latlongdist.html и расстояние должно быть:
Distance between 5.321008N 100.290131E and 5.321008N 100.290138E is 0.0008 km