Het berekenen rijafstand in iPhone

stemmen
3

Ik moet de rijafstand te vinden tussen de 2 locaties. Ik hoef niet aan de aanwijzingen in een kaart weer te geven, hoeft alleen maar om de afstand, die ik moet gebruiken in mijn toepassing te berekenen.

Heeft MapKit toestaan ​​dat dit? Is er een alternatief dat kan worden gebruikt?

Ik ben in staat om vooruit te krijgen geo-codering met behulp van Cloudmade, maar er lijkt niet om een ​​optie te rijden afstand te verkrijgen.

Even welke hulp waarderen.

De vraag is gesteld op 21/01/2010 om 00:31
bron van user
In andere talen...                            


3 antwoorden

stemmen
3

Cloudmade biedt ook een routebeschrijving. Als u in de verte alleen geïnteresseerd bent, gewoon negeren de instructies.

Een API-Call ziet er als volgt uit:

http://navigation.cloudmade.com/YOUR-API-KEY-GOES-HERE/api/0.3/47.25976,9.58423,47.26117,9.59882/car/shortest.js

en JSON omvat

....
route_summary: {
total_distance: Distance in meters,...

Bron

antwoordde op 21/01/2010 om 00:39
bron van user

stemmen
2

Ik vond dit in Google Groups, is dat nuttig?

http://groups.google.com/group/google-maps-api/msg/4dc2fad4f74e3314?pli=1

antwoordde op 05/05/2010 om 04:40
bron van user

stemmen
0

In mijn programma heb ik MKDirections om een ​​(loop) afstand te krijgen tussen twee locatie.

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

 }];

als je je locatie als een adres, zodat u de methode van CLGeocoder, die geeft je de lengte- en breedtegraad van uw adres te gebruiken

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

Als u een rij-afstand resultaat met behulp van MKDirections met degene die met behulp van Google Maps te vergelijken, zul je zien dat ze verschillen. Ik was op zoek met betrekking tot deze zaak en kwam over de volgende link http://www.macworld.co.uk/review/reference-education/apple-maps-vs-google-maps-3464377/

Hoewel Apple zijn het verbeteren van hun kaartdienst, ze nog steeds toe te geven in de nauwkeurigheid bij Google (IMO), ten minste in een vraag over de rij-afstand. Dus als nauwkeurigheid is niet zeer belangrijk in uw geval, zodat je samen kunt volgen met Apple. Anders zou ik aanraden om Google API.

antwoordde op 29/07/2017 om 11:20
bron van user

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