Получите координаты GPS с учетом текущего местоположения, пеленга и расстояния
Я пытаюсь получить координаты GPS с учетом текущего местоположения, пеленга и расстояния.
Но я не могу найти ничего, связанного с прикосновением к какао.
Я нашел здесь формулу Получить широту / долготу для текущей точки , расстояние и азимут
Есть ли способ попроще для iOS?
Заранее спасибо.
person
AReality
schedule
09.05.2012
source
источник
Ответы (1)
arrow_upward
1
arrow_downward
Конвертировал код в ссылке на Objective-C.
- (double)degreesToRadians:(double)degrees {
return degrees * M_PI / 180;
}
- (double)radiansToDegrees:(double)radians {
return radians * 180/ M_PI;
}
- (CLLocationCoordinate2D)remoteCoordinate:(CLLocationCoordinate2D)localCoordinate withDistance:(double)distance withBearing:(double)bearing {
double earthRadius = 6378.1; // Radius of Earth in kilometres.
double rLat1 = [self degreesToRadians:localCoordinate.latitude]; // Convert latitude to radians
double rLon1 = [self degreesToRadians:localCoordinate.longitude]; // Convert longitude to radians
double rLat2 = asinl( sinl(rLat1) * cosl(distance / earthRadius) + cosl(rLat1) * sinl(distance / earthRadius) * cosl(bearing) );
double rLon2 = rLon1 + atan2l( sinl(bearing) * sinl(distance/earthRadius) * cosl(rLat1), cosl(distance/earthRadius) - sinl(rLat1) * sinl(rLat2) );
double dLat2 = [self radiansToDegrees:rLat2]; // Convert latitude to degrees
double dLon2 = [self radiansToDegrees:rLon2]; // Convert longuitude to degrees
return CLLocationCoordinate2DMake(dLat2, dLon2);
}
person
AReality
schedule
10.05.2012