24、探索iOS设备的加速度计与定位功能

探索iOS设备的加速度计与定位功能

1. 加速度计与手势识别

加速度计除了用于测量重力和力之外,随着平台的成熟,利用其测量三维手势将成为其最佳(也是最常见)的用途之一。三维手势是iPhone或iPad内置加速度计带来的炫酷功能之一,它使用户无需触摸(甚至无需看)屏幕就能操作程序。

要识别一个手势,需要做两件事:
1. 准确跟踪构成手势的动作。
2. 确保不会将无意的随机动作识别为手势。

以识别摇晃手势为例,摇晃定义为设备快速来回晃动,类似于掷骰子前的动作。在竖屏模式下,摇晃主要有以下特征:
- 运动主要沿x轴,有少量沿y轴,沿z轴的运动更少。
- 至少有三个运动峰值,且正负力交替。
- 所有峰值至少为 +/-1 g,对于较强的摇晃,至少有一个峰值为 +/-2 g。

以下是用于检测摇晃的代码:

- (BOOL)didShake:(UIAcceleration *)acceleration {
    accelX = ((acceleration.x * kFilteringFactor) 
        + (accelX * (1 - kFilteringFactor)));     
    float moveX = acceleration.x - accelX;        
    accelY = ((acceleration.x * kFilteringFactor) 
        + (accelY * (1 - kFilteringFactor)));     
    float moveY
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值