我有一个与3D空间中的点旋转有关的问题。
假设我有一个具有X,Y和Z坐标的点。
现在,我想通过以下三种方式之一指定旋转角度:
我在这里找到了很好的链接,但是没有指向第3点。有人可以帮我解决这个问题吗?
所有旋转将绕原点旋转。因此,您可以平移到原点,旋转,然后平移回去。
T = translate from global coordinates to user-coordinates R = rotate around the origin (like in your link) (T^-1) = translate back point X X_rotated = (T^-1)*R*T*X
如果要旋转多个点,则将矩阵相乘:
A = (T^-1)*R*T X_rotated = A*X