本征如何从具有非均匀缩放的 Matrix4f 中提取旋转、平移和缩放

问题描述

我使用的是正交(仿射)4x4 矩阵。一个矩阵可能已经应用了许多旋转/缩放/平移操作,我想知道与缩放和平移分离的矩阵的方向是什么。

例如

Matrix4f m;
m << 1.0f,0.0f,2.59807611f,0.5f,-1.5f,0.866025388,-1000.0f,500.0f,200.0f,1.0f;

应该是:

scale: [1.0f,3.0f,1.0f]
rotation: [-0.258819044f,0.965925813]
translation: [-1000.0f,200.0f]

我在 Matrix 类中看到了很多特征分解函数,但它们并没有真正解决这个问题。它们更像是 Ax = b 的求解器。例如,LDLT 或 colPivHouseholderQr。

我在 Eigen 之外有这种功能,但我希望有一个集成功能

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...