linux编译qt opengl,动手搭建Qt下的OpenGL编程框架

本文介绍如何在Linux环境下,使用Qt构建一个OpenGL编程框架。主要包括:设置框架结构,如MainWindow类处理逻辑,NeHeWidget类继承QGLWidget进行绘制;重点讲解QGLWidget的paintGL(), resizeGL()和initializeGL()方法;最后展示了一个简单的正方形绘制及窗口大小调整后的自适应绘制。" 109020481,9054010,Farkas定理与优化理论:证明方法与应用,"['算法', '优化', '数学']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、    提要

在前面的一篇文章我们已经配置好了opengl的编程环境,今天要做的就是搭建一个Qt的编程框架,方便后面的学习。这一节会涉及到一些OpenGL的基础方法,多用手册和搜索引擎去理解。

二、   框架结构

项目的结构如下图。

主要的思路是:mainwindow类用来处理程序的逻辑和交互,nehewidget是继承QGLWidget的,用来绘制Opengl。在.pro文件中一定要加入QT+= opengl,还有喔没有使用QtCreater的ui编辑功能。

QGLWidget中最重要的三个方法是:

paintGL() -渲染OpenGL场景,当窗口需要刷新的时候就会被调用 .

resizeGL() -设置OpenGL的视口和一些属性,当窗口改变大小和窗口被创建的时候被调用。resizeGL()在处理完后会自动刷新屏幕。

initializeGL() -设置OpenGL的渲染环境,定义显示选项,当resizeGL() 或 paintGL()第一次运行的时候被调用。

二、   框架实现

main.cpp没有做任何改动。

#include

#include "mainwindow.h"

int main(int argc, char *argv[])

{

QApplication a(argc, argv);

MainWindow w;

w.show();

return a.exec();

}

mainwindow.h

将nehewidget作为自己的一个私有变量,并定义键盘事件。

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值