我想在原点旋转之后翻译在世界空间中的对象。问题是,在我旋转一个物体的同时,它的局部坐标系也旋转了,所以它的轴不再与世界坐标轴平行。因此,例如,如果我需要将对象绕y轴旋转后将对象转换为点(3,0,5),我将无法做到这一点,因为对象的局部坐标系不是与世界坐标系相同。例如:OpenGL的 - 翻译后旋转
glRotatef(45, 0.0, 1.0, 0.0);
glTranslatef(3.0, 0.0, 5.0);
glutSolidCube(1); // This won't be at (3,0,5) like how I need it
我如何克服这个问题?
感谢您的回复。但是我仍然没有看到如何在旋转后将对象自由转换为特定的坐标。 – Darius
@ user1136506:首先旋转对象,然后翻译它。而且由于矩阵是正确的联合,转换为在执行glTranslate之前调用glRotate。 – datenwolf
我得到它的工作。我有错误的想法,但清理了很多东西,谢谢! – Darius