在 iPhone/iPad 中使用加速度计进行水平和垂直震动计数

发布于 2024-12-02 03:23:50 字数 509 浏览 0 评论 0原文

我想计算水平和垂直摇动的次数,我参考了 UIAcceleration

我还提到了运动事件

但来不及提出更好的方法。 高度赞赏任何类型的帮助,代码,参考,或任何类型。

我只是想统计用户通过摇动iPhone设备进行摇动的次数,摇动可以以正常方式垂直或水平握住iPhone(底部的Home键)

I want to count number of shake horizontally and vertically, I have referred to UIAcceleration

I have also referred to Motion Events

But couldn't come up with better approach.
Any kind of help is highly appreciated , code , reference, or any type.

i just want to count the number of shake user make by shaking the iphone device, the shake can be vertically or horizontally holding iphone in normal way(home key at the bottom)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

墨小沫ゞ 2024-12-09 03:23:50

尝试DiceShaker。您需要使用 运动事件列表 4-6(也称为高通滤波器计算)文档,用于检测用户提供的加速度。

编辑:加速度计不断提供重力分量读数,因为加速度计与一堆弹簧一起工作,通过弹簧长度的增加/减少来确定力分量(在每个弹簧长度的方向上)。因此,只需删除恒定重力(始终起作用的力)组件即可检测用户提供的变化(因此称为高通)。幸运的是,我们不需要弄清楚如何做,因为苹果已经做了艰苦的工作,并在他们的文档中给出了方程式!

Try DiceShaker. You'll need to use the code for "Isolating Instantaneous Motion from Acceleration Data" given in Listing 4-6 of the motion events (also called high-pass filter computation) documentation to detect acceleration provided by user.

EDIT: The accelerometer constantly provides the gravity component readings because the accelerometer works with a bunch of springs that determine the force component (in the direction of each spring's length) by the increase/decrease in the spring's length. So just remove the constant gravity(the force that's ALWAYS working) component to detect the change provided by the user (hence the name high-pass). Luckily, we don't need to figure out how to because Apple has done the hard work and given the equations in their documentation!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文