Как рассчитать высоту как в приложении runkeeper
У меня есть приложение, которое отслеживает движение пользователя. И я храню все соответствующие данные lat / lng / alt и т. Д.
Я пытаюсь добавить высоту, как наRunKeeper просто без графики мне нужно просто получить значение высоты.
В моем .h файле:
@property (nonatomic) double netElevationLoss;
@property (nonatomic) double netElevationGain;
@property (nonatomic) double netElevationChange;
В моем .m файле:
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
{
double elevationChange = oldLocation.altitude - newLocation.altitude;
if (elevationChange < 0)
{
netElevationLoss += fabs(elevationChange);
}
else
{
netElevationGain += elevationChange;
}
netElevationChange = netElevationGain - netElevationLoss;
...
Я неЯ знаю, это правильный способ его расчета.
Я проверил это иальт например182,53 а такжеnetElevationChange
является-182,53.
Может быть это'хорошо, но, может быть, я что-то упускаю, хоть какая-то идея, что я здесь сделал неправильно?