立方体的简单三维交互式几何变换 这个学期对opengl 的学习,使我对计算机图形学的一些算法过程有了更多的了解。因为对三维图形的显示比较感兴趣,就做了立方体的简单三维交互式几何变换。 功能:键盘的方向键实现立方体的上下左右平移;A 键,S 键分别实现向前,向后旋转;J 键,K 键分别实现放大,缩小;C 键退出。 程序模块: 1.该模块为绘制一个立方体。 void DrawBox() { glBegin(GL_QUADS); //前面 glColor3f(1,0,0); glVertex3f(-1.0f, -1.0f, 1.0f); // 四边形的左下 glVertex3f( 1.0f, -1.0f, 1.0f); // 四边形的右下 glVertex3f( 1.0f, 1.0f, 1.0f); // 四边形的右上 glVertex3f(-1.0f, 1.0f, 1.0f); // 四边形的左上 // 后面 glColor3f(0,1,0); glVertex3f(-1.0f, -1.0f, -1.0f); // 四边形的右下 glVertex3f(-1.0f, 1.0f, -1.0f); // 四边形的右上 glVertex 3f( 1.0f, 1.0f, -1.0f); // 四边形的左上 glVertex 3f( 1.0f, -1.0f, -1.0f); // 四边形的左下 // 顶面 glColor3f(0,0,1); glVertex 3f(-1.0f, 1.0f, -1.0f); // 四边形的左上 glVertex 3f(-1.0f, 1.0f, 1.0f); // 四边形的左下 glVertex 3f( 1.0f, 1.0f, 1.0f); // 四边形的右下 glVertex 3f( 1.0f, 1.0f, -1.0f); // 四边形的右上 // 底面 glColor3f(1,1,0); glVertex 3f(-1.0f, -1.0f, -1.0f); // 四边形的右上 glVertex 3f( 1.0f, -1.0f, -1.0f); // 四边形的左上 glVertex 3f( 1.0f, -1.0f, 1.0f); // 四边形的左下 glVertex 3f(-1.0f, -1.0f, 1.0f); // 四边形的右下 // 右面 glColor3f(0,1,1); glVertex 3f( 1.0f, -1.0f, -1.0f); // 四边形的右下 glVertex 3f( 1.0f, 1.0f, -1.0f); // 四边形的右上 glVertex 3f( 1.0f, 1.0f, 1.0f); // 四边形的左上 glVertex 3f( 1.0f, -1.0f, 1.0f); // 四边形的左下 // 左面 glColor3f(1,0,1); glVertex3f(-1.0f, -1.0f, -1.0f); // 四边形的左下 glVertex3f(-1.0f, -1.0f, 1.0f); // 四边形的右下 glVertex3f(-1.0f, 1.0f, 1.0f); // 四边形的右上 glVertex3f(-1.0f, 1.0f, -1.0f); // 四边形的左上 glEnd(); } 2.该模块设置屏幕颜色和深度缓存,设置立方体的平移,缩放,旋转变换。 void display() { glClear(GL_COLOR_BUFFER_BIT|...