use*_*028 22 android android-sensors android-orientation
Android提供旋转矢量传感器和方向传感器.我知道它们会返回不同的数据,因为对于矢量传感器,我们有角度,在方向传感器中我们有角度.但是概念上的区别是什么?我从文档中无法理解.哪一个提供了三维空间中设备的方向?我糊涂了!
Rob*_*ies 43
较旧的ORIENTATION传感器使用三个角度报告方向.这种坐标系统的问题在于它遭受"万向节锁定":当实际方向矢量接近垂直时,其中一个坐标变为90或-90度,其余两个坐标变得无法解释或危险地非规范化.
较新的ROTATION传感器使用四分之一坐标报告方向,使用起来比较复杂,但不会受到万向节锁定问题的影响.使用四元数坐标报告方向时,无论方向如何,都可以确定设备的精确方向.
四元数也更具计算效率.您不需要调用昂贵的trig函数来将四元数旋转应用于向量.如果没有提供w坐标,你仍然可以使用单个sqrt调用来计算w,而对于三角度欧拉形式的方向坐标的三个sin和三个cos函数调用.
短篇小说:ORIENTATION风格的传感器做错了.它们在API 9中修复,用ROTATION传感器替换它们.
Pav*_*dka 18
ROTATION_VECTOR传感器在API 9中引入,代表"虚拟"传感器,它结合了来自不同传感器(通常为ACCELEROMETER,GEOMAGNETIC_FIELD和GYROSCOPE)的数据,并进行了一些智能计算,以提供更准确的数据,而不是使用来自ACCEL和GEOMAGNETIC_FIELD传感器的原始数据.这被称为"传感器融合".您可以在此处找到更多信息
ORIENTATION传感器已弃用,因为它提供的数据不是很准确.文档建议使用来自ACCELEROMETER和GEOMAGNETIC_FIELD传感器的原始数据.
不幸的是,我现在无法提供任何使用ROTATION_VECTOR传感器数据的例子,因为我正在调查中:)
万一你需要一些例子如何使用原始数据 - 随意问我 - 我会发布一些例子,但简单的谷歌搜索可以帮助你更好;)
| 归档时间: |
|
| 查看次数: |
20103 次 |
| 最近记录: |