OpenGL学习——(4)小例子

在这个例子中,我们会使用OpenGl库函数绘制一条直线并显示出来,意在直观的理解OpenGL,当然OpenGL的功能不止于此。在进行绘制的一系列工作前需要在项目中引入OpenGL的库函数的头文件,这里我们只引入了头文件”glut.h“,因为在”glut.h“中已经保证了”gl.h“和”glu.h“的正确引入。


#include "stdafx.h"
#include "gl/glut.h"

/*
*用以简单描述如何使用OpenGL绘制一个图形并显示
*2017-08-03
*/
void _tmain(int argc, _TCHAR* argv[])
{
    //初始化GLUT库,并和窗口系统通信
    glutInit(&argc,argv);

    //设置显示窗口的缓存(单缓存)和颜色模型(RGB模型)
    glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);

    //设置窗体的左上角起始位置
    glutInitWindowPosition(400,200);

    //设置glut窗体显示大小
    glutInitWindowSize(400,300);

    //创建glut窗体并设置窗体名字
    glutCreateWindow("OpenGL练习");

    init();

    //将图形描述函数送入显示窗口进行显示
    glutDisplayFunc(LineSet);

    //激活被送入窗口的绘制函数并进入检测鼠标和键盘等设备输入无线循环状态中
    glutMainLoop();

}

//初始化函数
void init(){
    //设置面板背景颜色
    glClearColor(1.0,1.0,1.0,0.0);
    //设置当前矩阵模式
    //(GL_MODELVIEW,对模型视景矩阵堆栈应用随后的矩阵操作(模型矩阵);
    //  GL_PROJECTION,对投影矩阵应用随后的矩阵操作(投影矩阵);
    //  GL_TEXTURE,对纹理矩阵堆栈应用随后的矩阵操作)
    glMatrixMode(GL_PROJECTION);
    //设置投影区域左下角(0,0),右上角(200,150)
    gluOrtho2D(0.0,200.0,0.0,150.0);
}

//绘制线段的OpenGl描述函数
void LineSet(void){
    glClear(GL_COLOR_BUFFER_BIT);

    //定义图形颜色
    glColor3f(1.0,0.0,0.0);
    glBegin(GL_LINES);
       glVertex2i(180,15);
       glVertex2i(10,145);
    glEnd();

    glFlush();//用于强制刷新缓冲,保证绘图命令将被执行
}

这里写图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值