Verwenden MapKit zu fahrende Strecke zwischen zwei Adressen zu berechnen?

stimmen
5

Ist es möglich, die MapKit im iphone sdk zu verwenden, um Fahrstrecke zwischen zwei Adressen zu berechnen?

Veröffentlicht am 03/02/2010 um 18:19
quelle vom benutzer
In anderen Sprachen...                            


5 antworten

stimmen
2

Mit iOS7 Sie erhalten volle Richtungen innerhalb der API

Werfen Sie einen Blick auf dieses Tutorial Tutorial .

Beantwortet am 24/10/2013 um 09:36
quelle vom benutzer

stimmen
2

Wie wäre es das Core Location-Framework:

  • (CLLocationDistance) getDistanceFrom: (const CLLocation *) Standort

Hier finden Sie die Breiten- / Längengrade für beide Adressen benötigen.

Edit: Veraltete in iOS 3.2. Verwenden Sie die distanceFromLocation: Methode statt.

Beantwortet am 16/03/2010 um 21:27
quelle vom benutzer

stimmen
1

Nein, aber wenn Sie die Länge / Breite haben, dann ist es ziemlich einfach, um den Abstand zu berechnen. Es ist die mathematische Distanz zwischen diesen Punkten natürlich. Nicht die tatsächliche Fahren oder zu Fuß zu erreichen, die auf einer tatsächlichen Route basiert.

Beantwortet am 03/02/2010 um 19:30
quelle vom benutzer

stimmen
0

Verwenden Sie MapKit die Fahrstrecke zwischen zwei Adressen zu berechnen - Nein , aber wenn Sie die Länge / Breite haben , dann ist es ziemlich einfach , um den Abstand zu berechnen. Es ist die mathematische Distanz zwischen diesen Punkten.

Wenn Sie den Unterschied zwischen Apple Maps und Google Maps durch den Blog gehen zu bekommen: -

Apple Maps vs Google Maps

Beantwortet am 24/09/2019 um 09:20
quelle vom benutzer

stimmen
0

In meinen Anwendungen habe ich MKDirections fahren (zu Fuß) Abstand zwischen zwei Aufenthaltes.

CLLocationCoordinate2D startCoordinates = YOUR_START_COORDINATES;
CLLocationCoordinate2D endCoordinates = YOUR_END_COORDINATES;

MKPlacemark *startPoint = [[MKPlacemark alloc] initWithCoordinate:startCoordinates];
MKPlacemark *endPoint = [[MKPlacemark alloc] initWithCoordinate:endCoordinates];

MKMapItem *startItem = [[MKMapItem alloc] initWithPlacemark:startPoint];
MKMapItem *endItem = [[MKMapItem alloc] initWithPlacemark:endPoint];

MKDirectionsRequest *request = [[MKDirectionsRequest alloc] init];

request.source = startItem;
request.destination = endItem;
request.transportType = MKDirectionsTransportTypeAutomobile; //here you can choose a transport type you need

MKDirections *direction = [[MKDirections alloc] initWithRequest:request];

[direction calculateDirectionsWithCompletionHandler:^(MKDirectionsResponse * _Nullable response, NSError * _Nullable error) {

          if (response) {
              for (MKRoute *route in response.routes) {
                  NSLog(@"Distance : %f", route.distance);
              }
          }

 }];

wenn Sie Sie Standort als Adresse haben, so können Sie die Methode von CLGeocoder verwenden, die Sie von Ihrer Adresse Breite und Länge geben

- (void)geocodeAddressString:(NSString *)addressString completionHandler:(CLGeocodeCompletionHandler)completionHandler;

Wenn Sie ein Auto erreichbar Ergebnis mit MKDirections mit dem man mit Google Maps vergleichen, werden Sie sehen , dass sie sich unterscheiden. Ich war auf der Suche in dieser Angelegenheit und kam über den folgenden Link http://www.macworld.co.uk/review/reference-education/apple-maps-vs-google-maps-3464377/

Auch wenn Apple-waren ihre Karten-Service zu verbessern, räumen sie noch in der Genauigkeit bei Google (IMO), zumindest in einer Frage in Bezug auf die Fahrzeit erreichbar. Also, wenn die Genauigkeit nicht sehr wichtig, in Ihrem Fall, so dass Sie zusammen mit Apple folgen können. Sonst würde ich Überprüfung Google API empfehlen.

Beantwortet am 29/07/2017 um 11:11
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more