我想在记录核心位置数据结束时计算总高程损失和增益。我很难想到这个数学的数学。
如果我在600英尺处开始并且在跟踪期间我上下移动,我将如何计算我的高程增益和损失?
想法?
答案 0 :(得分:2)
如果您想分别跟踪收益和损失,请保留两个累积成员变量netElevationLoss和netElevationGain,两者都初始化为0.
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
if(oldLocation == nil)
return;
double elevationChange = oldLocation.altitude - newLocation.altitude;
if (elevationChange < 0)
{
netElevationLoss += fabs(elevationChange);
}
else
{
netElevationGain += elevationChange;
}
}
您也可以使用此方法跟踪总更改
netElevationChange = netElevationGain - netElevationLoss
随时。
答案 1 :(得分:-2)
如果你上去,增加一个号码。如果你下来,增加(或减少?)另一个。
你决定如何处理噪音取决于你......