J'ai eu beaucoup de mal à comprendre pourquoi distanceFromLocation ne calcule pas la distance correcte pour deux CLLocations. Le résultat calculé est un nombre WAY supérieur à la distance réelle, mais les deux emplacements semblent être des emplacements valides.DistanceFromLocation produisant une distance extrêmement grande (incorrecte)
Tout d'abord, voici les deux endroits:
SITUATION 1: < 44,56697840, -69,55759810> +/- 0.00m (vitesse -1.00 mps/cours -1,00) @ 2010-12 -13 21:12:03 -0500
LOCATION 2: < 44,31400400, -69.79157000> +/- 0.00m (vitesse -1.00 mps/cours -1.00) @ 2010-12-13 21:12: 03 -0500
Et voici le code où Location1 et Location2 sont déclarés. Je l'ai vérifié que ce sont les valeurs correctes, mais je ne peux toujours pas comprendre cela
CLLocation *newLocation = [[CLLocation alloc]
initWithLatitude:[latitude doubleValue]
longitude:[longitude doubleValue]];
// CURRENT LOCATION (OR SEARCHED LOCATION)
double dLat = 0;
int tmpDistance = 0;
id returnId = nil;
id tmp = [featuredResults objectAtIndex:i];
CLLocation *newLocation2 = [[CLLocation alloc]
initWithLatitude:[[tmp valueForKey:@"lat"] doubleValue]
longitude:[[tmp valueForKey:@"lng"] doubleValue]];
dLat = [newLocation distanceFromLocation:newLocation2];
La valeur que je reçois pour Dlat est 330.707.027, ce qui est le mauvais sens. Est-ce que quelqu'un sait où je pourrais me tromper? Merci!
ne voulez-vous pas calculer la distance de newLocation2? – jakev