расчет предполагаемого времени прибытия и расстояния до прибытия в задаче C - PullRequest
0 голосов
/ 03 мая 2018

Я получаю адреса, делаю их в виде строки и, используя геокодирование, получаю координаты для каждого (широта и долгота), и мне нужно рассчитать расчетное время прибытия и предполагаемое расстояние, чтобы прибыть, и уведомить пользователя в пределах определенного радиуса. Я использую этот код, но он не работает, и я просто получаю 0,00000 для обеих, любая помощь будет оценена. спасибо

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


MKPlacemark *placemark3 = [[MKPlacemark alloc] initWithCoordinate:CLLocationCoordinate2DMake(coordination.latitude,coordination.longitude) addressDictionary:nil];
    MKMapItem *destination = [[MKMapItem alloc] initWithPlacemark:placemark3];


    // source and destination are the relevant MKMapItem's
    MKPlacemark *placemark2 = [[MKPlacemark alloc] initWithCoordinate:CLLocationCoordinate2DMake(currentLocation.coordinate.latitude, currentLocation.coordinate.longitude) addressDictionary:nil];

    MKMapItem *source = [[MKMapItem alloc] initWithPlacemark:placemark2];
    request.source = source; // MKMapItem
    request.destination = destination;
    // Specify the transportation type
    request.transportType = MKDirectionsTransportTypeAutomobile;
    // If you're open to getting more than one route, requestsAlternateRoutes = YES; else requestsAlternateRoutes = NO;
    request.requestsAlternateRoutes = NO;
    MKDirections *directions = [[MKDirections alloc] initWithRequest:request];
    [directions calculateDirectionsWithCompletionHandler:^(MKDirectionsResponse *response, NSError *error) {

        if (!error) {
            self.directionsResponse = response;
        }
    }];

    MKRoute *route = self.directionsResponse.routes[0];
    CLLocationDistance distance = route.distance; //distance in meter
    self.arrivalDistance.text =[NSString stringWithFormat:@"Distance to arrive in meters:\"%f\"",distance];
    NSTimeInterval seconds = route.expectedTravelTime; //ETA in Seconds
    self.arrivalTime.text=[NSString stringWithFormat:@"Minutes to arrive:\"%f\"", (seconds/60)];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...