swift - 如何将 CMRotationmatrix 转到初始位置

标签 swift math matrix rotation rotational-matrices

我有一个从运动管理器获得的旋转矩阵。它旋转一个物体。现在我想重置旋转,这意味着我按下 iPhone 上的按钮,旋转就会设置回开始位置,而无需将 iPhone 旋转到开始位置。

我能够通过将旋转矩阵的 m11 到 m33 的初始值保存到数组中并执行以下操作来实现此目的:(当前位置 m11 到 m33) - (按下重置按钮时的位置 m11 到 m33 - 初始位置m11 到 m33)。

这会导致当前旋转矩阵具有与初始矩阵完全相同的值,从而重置旋转。但是,如果我现在转动 iPhone,则对象的转动结果是无意义的,旋转矩阵的值也是如此。

那么计算这个的正确公式是什么/将旋转矩阵转回与 iPhone 到目前为止已旋转的 x/y/z 度数相同的公式是什么?

非常感谢。

最佳答案

答案是采用初始变换矩阵并将每个新变换矩阵除以它。我的问题是我计算错误了。因此,了解如何除以矩阵会有所帮助。

关于swift - 如何将 CMRotationmatrix 转到初始位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45921933/

相关文章:

algorithm - 具有两个给定点和成本函数的抛物线拟合

python - 除以0时,我希望它打印给定的文本

python - 计算两个矩阵的余弦相似度

python - 为什么这个巨大的(非稀疏的)numpy 矩阵适合 RAM

swift - 如何制作 NSSound 循环

iOS 如何制作一个函数来接受确认到 NSCoding 的参数

ios - 如何使用 swift 在 firebase 中更新 token ?

math - 计算多面体体积的通用公式

ios - 如何快速从我的 map View 上的特定点获取经度和纬度?

c++ - 为什么我不能访问 openCV 中的矩阵元素?