Android传感器坐标轴方向

传感器的坐标系统

通常情况,传感器框架使用标准的3轴坐标系统来表达数据值。对于大多数传感器,坐标系统是相对与设备被保持在默认方向时的设备的屏幕来定义的(如图1)。当设备被保持在默认方向时,X轴是水平向右、Y轴是垂直向上、Z轴是指向屏幕面板的外部。在这个系统中,背对着屏幕的Z轴坐标是负值。该坐标系统被下列传感器使用:

1.加速度传感器    

2.重力传感器

3.陀螺仪

4.线性加速传感器

5.磁力仪

图1.传感器API使用的坐标系统。

要理解的最重要的一点是,在设备屏幕的方向发生变化时,坐标系统的各坐标轴不会发生变化,也就是说传感器的坐标系统不会因设备的移动而改变。这种行为与OpenGL坐标系统的行为相同。

另外要理解的一点是,应用程序不要假设设备的自然(默认)方向是纵向的。对于很多平板设备的自然方向是横向的。传感器坐标系统总基于设备的自然方向。

最后,如果你的应用程序要把传感器的数据跟屏幕上的显示相匹配,那么就要使用getRotation()方法来判断屏幕的旋转性,然后使用remapCoordinateSystem()方法把传感器坐标映射到屏幕的坐标上。即使在你的清单中指定了只是纵向显示,你也要这么做。

注意:有些传感器和方法使用的坐标系统是相对与全球参照系(不是设备参照系)。这些传感器和方法返回的数据是相对与地球的设备运动或设备位置。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值