我正在创建一个简单的应用程序,用于测量用户在握住设备时在空中冲压所施加的力。我知道的唯一方法是使用内置加速度计。现在我可以使用UIAccelerometerDelegate协议获得加速度值
- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration.
问题是,我不知道如何处理这些值,现在我得到x,y和z的总和。是否有任何公式或我可以使用的任何公式,以便为用户提供更准确的结果?
答案 0 :(得分:2)
这听起来像一个物理问题,而不仅仅是一个编程问题。首先,您需要从API返回的向量中获取加速度的大小:
a =平方根(x ^ 2 + y ^ 2 + z ^ 2)
然后,你可以使用牛顿的公式来获得力量。
F =毫安
由于你有加速度,所以你需要做的就是乘以手机的质量而你已经完成了。 (尽管您可能希望将结果转换为特定的度量单位。)
请注意,压力可能比力更有意义。例如,我可能希望手机用磅/平方英寸来描述我的打孔强度。但是如果不知道用户拳头的表面区域,你就无法做到这一点。