【发布时间】:2012-09-12 12:20:48
【问题描述】:
我已经使用下面的代码来计算设备从一个地方移动到另一个地方的距离。是否正确请看我的代码。
-(void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration
{
NSDate *now = [NSDate date];
NSTimeInterval intervalDate = [now timeIntervalSinceDate:now_prev];
sx = acceleration.x * kFilteringFactor + sx * (1.0 - kFilteringFactor);
sy = acceleration.y * kFilteringFactor + sy * (1.0 - kFilteringFactor);
sz = acceleration.z * kFilteringFactor + sz * (1.0 - kFilteringFactor);
[xLabel setText:[NSString stringWithFormat:@"%.2f",sx]];
[yLabel setText:[NSString stringWithFormat:@"%.2f",sy]];
[zLabel setText:[NSString stringWithFormat:@"%.2f",sz]];
float aValue = sqrtf(sx*sx+sy*sy+sz*sz);
[gLabel setText:[NSString stringWithFormat:@"%.2f g",aValue]];
velX += (sx * intervalDate);
distX += (velX * intervalDate);
velY += (sy * intervalDate);
distY += (velY * intervalDate);
velZ += (sz * intervalDate);
distZ += (velZ * intervalDate);
float distance = sqrtf(distX*distX+distY*distY+distZ*distZ);
[distanceLabel setText:[NSString stringWithFormat:@"%.2f",distance*0.0006213f]];
now_prev = [now retain];
}
【问题讨论】:
-
无论哪种方式,您都会遇到问题。这种“死机侦察”是非常不准确的,更不用说你也没有处理手机的减速。
-
我没听明白。你能告诉我一些计算与 UIAccelerationValues 的距离吗?
-
我不知道为什么有些人对这个问题投反对票。如果有任何问题,请回答我的问题?投反对票是可以的,如果有任何问题也可以纠正