2

Windows 8为 Windows 应用商店应用程序提供了各种传感器。其中之一是OrientationSensor。我真的不明白它的作用,或者更确切地说它与倾斜计有何不同

MSDN 有一个相当简短的解释:

该传感器返回一个旋转矩阵和一个四元数,可用于在游戏应用程序中调整用户的视角。

因此,它返回(大概?)对应于设备方向的 3D 旋转的数学表示。但倾角仪本质上是一样的,尽管数学表示不同:

该传感器返回分别对应于围绕 x、y 和 z 轴的旋转角度的俯仰、滚动和偏航值。

我知道在某些情况下矩阵和四元数更可取,并且它们避免了万向节锁定。但倾角仪也可以提供这一点。为什么有两个传感器呢?他们之间有什么区别?

4

1 回答 1

2

警告:我不是该主题的专家,我的回答可能不准确,或者完全错误。

看起来它们都是硬件传感器的传感器融合——加速度计、陀螺仪和磁力计。(https://blogs.msdn.com/b/b8/archive/2012/01/24/supporting-sensors-in-windows-8.aspx

根据http://msdn.microsoft.com/library/windows/apps/hh465294.aspx,“开发人员通常使用这些数据来控制复杂的游戏。”

此外, http: //msdn.microsoft.com/en-US/library/windows/apps/hh465282.aspx

四元数背后的数学相当奇特,因为它涉及复数的几何性质和虚数的数学性质,但使用它们很简单,而且像 DirectX 这样的框架支持它们。”

似乎 OrientationSensor 是一个方便的 API,适用于那些确实被证明很方便的少数情况。

于 2013-06-23T08:39:54.390 回答