2012-02-15 57 views
4

我在很多地方看过,例如:One Screen Deserves Another:“API使用的传感器坐标系对于设备的自然方向不会随着设备的移动而改变,并且与OpenGL坐标系相同。”Android中的传感器坐标系不变,是吗?

现在,我得到同样的阅读,因为这形象:enter image description here

我不明白的是:如果坐标系统,如果我旋转手机(总是与屏幕所面临的不改变用户),总是应该在Y轴上施加重力。如果我把手机放在屏幕不再面向用户的位置,就像放在桌子上一样,应该只是改变坐标轴,其中重力应该应用在Z轴上。

我的理解有什么问题?

谢谢!吉列尔莫。

回答

2

当设备的屏幕方向改变时,该轴被交换。您引用的文章如下:

但是,Android传感器API将传感器坐标空间定义为相对于设备的顶部和侧面 - 而不是短边和长边。当系统重新定向屏幕以响应手机侧向移动时,传感器坐标系不再与屏幕坐标系对齐,并且在应用程序的显示屏中出现意外旋转。

要访问未交换的值,如果你愿意,可以在值[]中使用索引3,4和5,否则在同一篇文章中提到的一些建议工作得非常好!