Utilizați mapkit pentru a calcula distanța de conducere între două adrese?

voturi
5

Este posibil să se utilizeze mapkit în SDK-ul iPhone pentru a calcula distanța de conducere între două adrese?

Întrebat 03/02/2010 la 18:19
sursa de către utilizator
În alte limbi...                            


5 răspunsuri

voturi
2

Cu iOS7 vă obține indicațiile de orientare în cadrul API

Aruncati o privire la acest tutorial Tutorial .

Publicat 24/10/2013 la 09:36
sursa de către utilizator

voturi
2

Cum despre utilizarea cadrului de bază Locul de amplasare:

  • (CLLocationDistance) getDistanceFrom: (Const CLLocation *) Locul de amplasare

Vei avea nevoie de latitudine / longitudinile pentru ambele adrese.

Editare: Depreciată în iOS 3.2. Utilizați distanceFromLocation: metoda in loc.

Publicat 16/03/2010 la 21:27
sursa de către utilizator

voturi
1

Nu, dar dacă aveți longitudine / latitudine, atunci este destul de ușor pentru a calcula distanța. Este distanța matematică între aceste puncte desigur. Nu este de conducere sau de mers pe jos distanța reală pe care se bazează pe un traseu real.

Publicat 03/02/2010 la 19:30
sursa de către utilizator

voturi
0

Utilizați mapkit pentru a calcula distanța de conducere între două adrese - Nu , dar dacă aveți longitudine / latitudine , atunci este destul de ușor pentru a calcula distanța. Este distanța matematică între aceste puncte.

Dacă doriți să obțineți diferența dintre Apple Maps și Google Maps trec prin blog: -

Apple Maps vs Google Maps

Publicat 24/09/2019 la 09:20
sursa de către utilizator

voturi
0

În aplicațiile mele am folosit MKDirections pentru a obține de conducere (mers pe jos), distanța între două locație.

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);
              }
          }

 }];

dacă vă aveți locație ca o adresă, astfel încât să puteți utiliza metoda de CLGeocoder, care va da latitudinea și longitudinea a adresei

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

Daca se compara cu un rezultat de conducere la distanță folosind MKDirections cu cel folosind Google Maps, veți vedea că acestea diferă. Am fost în căutare cu privire la această chestiune și a venit peste link - ul următor http://www.macworld.co.uk/review/reference-education/apple-maps-vs-google-maps-3464377/

Chiar dacă Apple au îmbunătățit serviciul lor hartă, ei încă mai recunosc în precizie la Google (OMI), cel puțin într-o întrebare în ceea ce privește distanța de conducere. Deci, dacă precizia nu este foarte importantă în cazul dumneavoastră, astfel încât să puteți urmări, împreună cu Apple. În caz contrar, aș recomanda verificarea API-ul Google.

Publicat 29/07/2017 la 11:11
sursa de către utilizator

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