qcustom使用OpenGL加速

本文介绍了在Qt项目中使用QCustomPlot启用OpenGL时遇到的问题及解决方法。包括在.pro文件中添加Qt+OpenGL支持,设置DEFINES变量,以及针对MSVC和MinGW环境配置GLUT库的详细步骤,如添加库文件路径和链接选项。此外,还提供了在.cpp文件中引入头文件和调用初始化函数的指导。

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

添加

 ui->customPlot->setOpenGl(true);
 qDebug() <<"Is start opengl?=" << ui->customPlot->openGl();ui->customPlot->setOpenGl(true);  使用OpenGL 会出现如下情况

在这里插入图片描述
网上找到资料
在pro文件加:Qt +=opengl
添加依赖项:
DEFINES += QCUSTOMPLOT_USE_OPENGL
如果报错不能使用glu的库,这个情况是缺少库文件:
加载qt5.x自带的OpenGL库文件:LIBS+=-lopengl32 -lglu32。
测试 对于我没用 还是启动不了

需要加载glue
.下载

Linux 下安装
Linux 下一般使用开源的 freeglut,安装相对于 windows 比较方便,比如 Ubuntu 下安装只要一行命令:

$ sudo apt-get install build-essential freeglut3 freeglut3-dev binutils-gold
Windows 下安装

1)需要glut库的请下载 glut-3.7.6-bin.zip (GLUT for Win32 dll, lib and header file )(已经十几年没更新过了所以就是这个版本了!)

下载地址:https://user.xmission.com/~nate/glut.html
2)freeglut库里面有两个版本,都包含32和64位的,根据Qt的配置自己选择:

下载地址:http://www.transmissionzero.co.uk/software/freeglut-devel/

Visual Studio:freeglut 3.0.0 MSVC Package

MinGW :freeglut 3.0.0 MinGW Package

2.环境配置:

msvc环境配置:(64位版本):

  1. .解压后将freeglut文件中的bin文件下的x64文件下的freeglut.dll,拷贝至QT的安装路径D:\Qt\Qt5.9.4\5.9.4\msvc2017_64\bin目录下;
  2. .解压后将freeglut文件中的include文件下的GL文件,拷贝至QT的安装路径D:\Qt\Qt5.9.4\5.9.4\msvc2017_64\include目录下;
  3. .解压后将freeglut文件中的lib文件下的x64文件下的freeglut.lib,安装路径D:\Qt\Qt5.9.4\5.9.4\msvc2017_64\lib目录下;

MinGW环境配置(32位版本):

  1. .解压后将freeglut文件中的bin文件下的freeglut.dll,拷贝至QT的安装路径D:\Qt\Qt5.9.4\5.9.4\mingw53_32\bin目录下;
  2. .解压后将freeglut文件中的include文件下的GL文件,拷贝至QT的安装路径D:\Qt\Qt5.9.4\5.9.4\mingw53_32\include目录下;
  3. .解压后将freeglut文件中的lib文件下的libfreeglut.a、libfreeglut_static.a文件,拷贝至QT的安装路径D:\Qt\Qt5.9.4\5.9.4\mingw53_32\lib目录下;

3.切换到自己的程序中,在 **.pro 文件中添加:

QT += opengl

MSVC版本:

#第一种就是直接加据对路径
LIBS += D:/Qt/Qt5.12.6/5.12.6/msvc2017_64/lib/freeglut.lib D:/Windows/Kits/10/Lib/10.0.17763.0/um/x64/OpenGL32.Lib

#第二种就是直接加库文件,这个的前提是你的库文件必须在系统目录或者工程编译生成目录build-untitled-Desktop_Qt_5_12_6_MSVC2017_64bit-Debug下
LIBS += freeglut.lib OpenGL32.Lib

#第三种就是多个库在同一个文件夹下的时候,连接使用
LIBS += -LD:/Qt/Qt5.12.6/5.12.6/msvc2017_64/lib -lfreeglut -lOpenGL32

#第四种就是相对路径./表示生成目录build-untitled-Desktop_Qt_5_12_6_MSVC2017_64bit-Debug
LIBS += -L./ -lfreeglut -lOpenGL32

MinGW版本:

LIBS += -LD:/Qt/Qt5.12.6/5.12.6/mingw73_32/lib -llibfreeglut -lopengl32

LIBS模板

# O U T P W D 表 示 编 译 生 成 的 那 个 目 录 , OUT_PWD表示编译生成的那个目录, OUTPWDPWD表示.pro文件的那个目录
#win32:CONFIG(release, debug|release): LIBS += -LKaTeX parse error: Expected 'EOF', got '#' at position 50: …lease/ -lmylib #̲else:win32:CONF…OUT_PWD/…/…/…/projects/mylib/debug/ -lmylib
#else:unix: LIBS += -L$$OUT_PWD/…/…/…/projects/mylib/ -lmylib
4.在*****.cpp中加入#include <GL/glut.h>,这样就可以使用glut中的函数了。

5.记得调用初始化函数后,才能使用。

glutInit(&argc, argv);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七 六 伍

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值