La Distance entre 2 points avec CLLocationCoordinate2D

Détails

Je suis en train de mesurer la distance entre deux coordonnées sur une carte (longitude, latitude). La première coordonnée est mon emplacement actuel qui est un CLLocation, et l'autre est un pin sur la carte, qui est de type CLLocationCoordinate2D.

Question

J'appelle distanceFromLocation pour obtenir mon emplacement actuel dans CLLocation mais il est dit que le mauvais type de récepteur de CLLocationCoordinate2D.

CLLocationCoordinate2D locationCoordinate;

//Set the latitude and longitude
locationCoordinate.latitude  = [[item objectForKey:@"lat"] doubleValue];
locationCoordinate.longitude = [[item objectForKey:@"lng"] doubleValue];

CLLocationDistance dist = [locationCoordinate distanceFromLocation:locationManager.location.coordinate]; //bad receiver type from CLLocationCoordinate2D

Question

Je veux savoir la distance entre ces 2 coordonnées en unité métrique, et je sais que les types de désadaptation, mais comment les convertir afin que je puisse trouver la distance entre ces 2 nœuds?

Le distanceFromLocation méthode est dans le CLLocation classe et il faut un CLLocation objet en tant que paramètre (pas un CLLocationCoordinate2D struct). C'est ce que l'erreur signifie.
Oui, je sais pourquoi j'ai été faire cette erreur, mais je ne sais pas comment faire pour le convertir pour le faire fonctionner!

OriginalL'auteur E-Riddie | 2013-12-10