javascript - 用欧拉 Angular 或旋转矩阵平均旋转

标签 javascript matrix linear-algebra rotational-matrices euler-angles

我一直在开发一个小应用程序,它可以通过移动设备或平板电脑的陀螺仪控制立方体 map 全景图的旋转。我终于让它工作了,尽管是粗略的。我的解决方案涉及将来自陀螺仪的欧拉 Angular 转换为旋转矩阵,并将这些矩阵传递给各种修改矩阵。

现在我已经完成了这项工作,我希望平滑动画。我在想最好在一个数组中收集旋转数据,然后取它们的平均值。但是,我完全不确定该怎么做。

我可以对旋转矩阵或欧拉 Angular 本身进行平均吗?或者我是否需要将数据转换为四元数,然后应用某种平均函数?

任何帮助都会很棒。谢谢!

最佳答案

Can I average the rotational matrices, or the euler angles themselves?

没有。

Or am I going to need to convert the data into Quaternions and then apply some kind of averaging function?

是的,只有四元数适合内推/外推。参见 45:05 here (David Sachs, Google Tech Talk) .

我没有像您正在寻找的那样进行平滑处理,但无论如何,只有四元数是合适的。

Quaternion Slerps are commonly used to construct smooth animation curves ...

来自 Wikipedia, Slerp .

关于javascript - 用欧拉 Angular 或旋转矩阵平均旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24144445/

相关文章:

.net - Microsoft Research 的 Sho dll 与开源 Math.NET 数字项目相比如何

python - 如何有效地创建遍历 python 中的大量列表?

javascript - 如何创建一个 View ,例如单击 Gmail 搜索栏中的向下箭头时

javascript - 使用 onload javascript 的问题

javascript - 有没有办法在 react 传单的标记上添加徽章?

python - 给定一个 N 边方阵,有没有办法在不使用循环或 if 条件的情况下找到单元格的环值?

python - 高效的二维数组处理

将邻接矩阵转换为距离或跳跃矩阵

vector - 重复长度与输入向量不同的排列

php - 简单的 PHP 表单不起作用