0

我正在开发一个办公室室内平面图应用程序,我必须在其中准确地显示办公室导航。要创建一个逻辑,我必须执行一项任务:

应用程序中应该有一个开始UIButton,当我点击该按钮时,应该开始一个过程,在这个过程中,我必须从我开始步行的那个点找到以米为单位的距离,并从那个起点找到方向。

是否可以通过 CoreMotion 框架实现,如果可以,那么如何?

所以请建议我任何合适的解决方案。

4

2 回答 2

0

你可以。但是如果你使用加速度计获取距离的方式,根据我的经验,它的结果会很糟糕。

我推荐检查用户步数并通过步进计算距离的方式。

  1. 计步
  2. 使用步数计算距离,将用户信息作为高度的步距。
于 2015-04-09T06:56:40.327 回答
0

一般来说,这真的很难,而且可能无法使用 CoreMotion 加速度计。基本上,iPhone 传感器为您提供加速,您需要积分两次(即简单地乘以时间^2)才能到达距离。根据我的测试(和其他人),结果很糟糕。有一些技术可以改进 - 搜索传感器融合和卡尔曼滤波器以获取更多信息。

步数计数可能会非常准确 - 尽管可能不像办公室那样在很短的距离内,但您的运气会更好。

编辑:我得出的结论是你想使用 CoreMotion 和加速度计。您还可以使用 CoreMotion 和计步。看看CM Pedometerhttps ://developer.apple.com/library/prerelease/ios/documentation/CoreMotion/Reference/CMPedometer_class/index.html (注意:在iOS7中这是CMStepCounter)。

查看 CMPedometer 示例的此答案:CMPedometer queryPedometerDataFromDate 返回错误 103

于 2015-04-09T06:59:04.320 回答