代码运行环境:VC++6.0
运行效果:
图片描述

代码:

#include <gl/glut.h>

float step = 0.08f; //旋转速度

void Display()  //显示一个三角形旋转
{
    //设置图形旋转
    while(1){
        glRotatef(step,0.0f,0.0f,1.0f); //设置旋转每次在上一个的基础上逆时针旋转step角度

        //绘图
        glClear(GL_COLOR_BUFFER_BIT);   //清空颜色缓冲
        glBegin(GL_TRIANGLES);  //图元是三角形
            glColor3f(1,0,0);   //设置画笔颜色为 红色
            glVertex2f(0,0.8);  
            glColor3f(0,1,0);   //设置画笔颜色为 绿色
            glVertex2f(0.75,-0.5);
            glColor3f(0,0,1);   //设置画笔颜色为 蓝色
            glVertex2f(-0.75,-0.5);
        glEnd();

        //step+=0.00001f;   //旋转速度递增

        glFlush();  //清空并执行缓冲区指令
    }
}


int main(int argc,char** argv)
{
    //glut初始化
    glutInit(&argc,argv);   //对命令行参数进行处理
    glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);  //初始化窗口显示模式为单缓冲和RGB颜色模式
    glutInitWindowSize(700,700);    //初始化窗口大小为700px*700px
    glutInitWindowPosition(200,100);    //初始化窗口显示位置
    glutCreateWindow("三角形旋转");  //创建窗口

    glutDisplayFunc(Display);   //设置显示回调函数
    glutMainLoop(); //死循环

    return 0;
}


freecode
108 声望9 粉丝

凡不能毁灭你的,必将成就你


引用和评论

0 条评论