在目标c中找到重力

时间:2013-03-23 07:08:21

标签: ios objective-c accelerometer

我想在目标c中找到重力,我在我的项目中使用Accelerometer。但我没有在Google上找到任何关于重力的好教程,所以我需要帮助

我想在Gravity Meter中移动小红圈,如图所示。

我目前正在使用加速度计,我可以使用加速度计找到重力。

- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration {

 ...............

  labelX.text = [NSString stringWithFormat:@"%@%f", @"X: ", acceleration.x];
  labelY.text = [NSString stringWithFormat:@"%@%f", @"Y: ", acceleration.y];
  labelZ.text = [NSString stringWithFormat:@"%@%f", @"Z: ", acceleration.z];  
![enter image description here][1]}

由于

enter image description here m.png

1 个答案:

答案 0 :(得分:2)

看着那个应用程序(视频计),你似乎正在寻找施加G力。 G力不是重力 - 它是一种外部机械力(用户摆动装置等),具体定义为不受地球引力的影响。这很重要,因为在iPhone或任何其他启用加速度计的设备上,它会在没有运动时报告全0。如果是报告重力,任何读数都会不断地报告Y /向下轴上的运动(地球拉低你)。

你正在寻找G-force,这意味着你需要:

  1. 动作方向
  2. 动作的力量
  3. 查看Apple的UIAcceleration object文档 - 您将根据变量变化来确定方向 - xyz。这些变量的值给你一个力(1.0近似g,即9.8m / s2 - 地球引力)。如何在图表上显示数据取决于您 - 您可以存储加速度事件的历史记录然后为它们设置动画,并在加速停止时将点重置为中间点(UIAccelerometer共享对象将在加速停止时开始报告0值)