#include#include #include GLfloat step=0.0,s=0.1;void CALLBACK display();void CALLBACK display(){ glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glMatrixMode(GL_PROJECTION); glLoadIdentity(); s+=0.005; if(s>1.0)s=0.1; glPushMatrix(); glScalef(s,s,s); //glRotatef(step,0.0,1.0,0.0); //沿y轴旋转 glRotatef(step,0.0,0.0,-1.0);//沿z轴旋转(绕Z轴旋转时,大于0,表示逆时针旋转。小于0顺时针旋转) //glRotatef(step,1.0,0.0,0.0); //对物体进行数学描写叙述 glBegin(GL_POLYGON); glColor3f(0.0,1.0,1.0); glVertex2f(-0.4,-0.4); glColor3f(1.0,0.0,0.0); glVertex2f(0.0,0.0); glColor3f(1.0,0.0,1.0); glVertex2f(-0.4,0.4); glEnd(); glBegin(GL_LINES); glColor3f(0.0,1.0,1.0); glVertex2f(0.0,-0.2); glColor3f(1.0,0.0,1.0); glVertex2f(0.0,0.2); glEnd(); glBegin(GL_POLYGON); glColor3f(0.0,1.0,1.0); glVertex2f(0.4,-0.4); glColor3f(1.0,0.0,0.0); glVertex2f(0.0,0.0); glColor3f(1.0,0.0,1.0); glVertex2f(0.4,0.4); glEnd(); glPopMatrix(); glFlush(); auxSwapBuffers();}void CALLBACK stepDisplay (void){ step = step + 0.13; if (step >360.0) step = step -360.0; display();}void main(){ //初始化窗体(设置窗体的名称坐标尺寸和显示模式) auxInitDisplayMode(AUX_SINGLE|AUX_RGBA); auxInitPosition(0,0,600,600); auxInitWindow("openG"); glClearColor(0.0,0.0,0.0,0.0); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); auxIdleFunc (stepDisplay); auxMainLoop(display);}