我有一些与3D物体旋转有关的问题。我正在使用带有行主矩阵的右手系统。
我一直在编程抽屉,它根据当前旋转的方向绘制线条。
我的问题:
如果我总是在每次旋转时使用不同的轴,根据新的方向,当我只旋转一次时,云台锁还能发生吗?例如:
matrix.rotate(angle,newaxis) // newaxis is based on the current orientation
我用旋转矩阵测试了很多情况。我发现每列代表新坐标系的矢量。与matrix.column[0]
x-axis
相同,matrix.column[1]
为y-axis
。我的问题是这样的:我需要获得x,y,z值以向前移动并画一条线。喜欢这个
moveX(current.x+d*orientation.x)
。
我发现解决方案是从矩阵的 第一行 中获取值。 但为什么会这样呢?