【发布时间】:2019-06-19 12:29:13
【问题描述】:
让我们考虑一个简单的情况,我们有一个带有变换矩阵的对象,然后我们进行简单的变换:
- 将 x 轴旋转 X1 角度 -> 一个矩阵
- 将 y 轴旋转 Y1 角度 -> B 矩阵
- 将 x 轴旋转 X2 角度 -> C 矩阵
在通常情况下,我会做 C * B * A,然后故事就结束了。但正如我们所知,它所做的是在由先前变换创建的局部坐标系中应用新变换。我不喜欢它。
在某些特定情况下,我想做的是在本地和其他时间在世界坐标系中旋转。我的意思是,如果我有矩阵 M = B * A(但我没有可用的 X1 和 Y1 角度;我只有 M)并且我想在世界坐标系中应用 C em> 那么输出的新变换矩阵将具有以下内容:
- x 旋转 = X1 + X2
- y 旋转 = Y1
有什么方法可以实现吗?
编辑
我想我解释错了。
假设我们在矩阵 M 描述的位置有一个对象 A。M 具有旋转、缩放和平移功能。我想沿着位于对象 A 中心但平行于基本坐标系的轴的轴旋转对象。毕竟我还希望对象在基本坐标系中停留在 (x,y,z)。
【问题讨论】:
标签: math graphics rotation linear-algebra