先gltranslatef 然后glrotatef为什么得到的结果是这样?解决方法

先gltranslatef 然后glrotatef为什么得到的结果是这样?


画那个绿色的正方形:

C/C++ code

glLoadIdentity();
glTranslatef(0,2.5,0);
glRotatef(45,0,0,1); 
DrawUnitBox(GREEN);



glRotatef(45,0,0,1); 不是绕原点旋转吗? 应该转到坐标 y 轴的左边去了? 怎么会是绕正方形的中心旋转?

谢谢

------解决方案--------------------
先旋转再平移~~

http://topic.csdn.net/u/20120229/12/30dfb0cd-1ef5-4a1c-a51d-86e69e0f42b5.html