QT中使用OpenGL function

1.前言

QT做界面编程很方便,QT+OpenGL的使用也很方便,因为QT对原生的OpenGL API进行了面向对象化的封装。

如:

cpp 复制代码
函数:initializeOpenGLFunctions()......
类:QOpenGLVertexArrayObject、QOpenGLBuffer、QOpenGLShaderProgram......
数学工具类:QVector3D、QMatrix4x4......

有些时候我们需要使用原生的OpenGL API,这在QT中也很方便,该怎么做呢?

2.内容

如果想在QT中使用原生的OpenGL API,如**glReadPixels** 、glShaderSource,需要参考QT官方文档说明:

QOpenGLFunctions Class | Qt GUI 6.8.1

继承类QOpenGLExtraFunctions,然后就可以使用上述原生API了,常用的用法是这样的,

cpp 复制代码
#include <QOpenGLWidget>
#include <QOpenGLFunctions_4_5_Core>
#include <QOpenGLShaderProgram>
#include <QOpenGLVertexArrayObject>
#include <QOpenGLBuffer>

//#include <AIS_InteractiveContext.hxx>

class QMenu;
class QRubberBand;

//! Adapted a QWidget for OpenCASCADE viewer.
class OccView : public QOpenGLWidget, QOpenGLFunctions_4_5_Core
{
   // implementation here

}
相关推荐
DTrader43 分钟前
用TS无法实盘量化? - 实盘均线策略
前端·api
Li emily1 小时前
港股api接入指南:实时行情与历史数据获取
python·api·fastapi
Ulyanov3 小时前
基于 Python 的三维动态导弹攻防演示系统设计与实现:从架构到实战的深度剖析
开发语言·python·qt·架构·雷达电子对抗
小短腿的代码世界4 小时前
Qt WebEngine深度解析:Chromium多进程架构与Qt信号槽的双向融合
qt·搜索引擎·单元测试
Li emily4 小时前
用Python批量调用外汇接口获取多货币汇率
人工智能·python·api·fastapi
charlie1145141915 小时前
现代Qt开发教程(新手篇)1.10——进程
开发语言·c++·qt·学习
小短腿的代码世界5 小时前
Qt量化策略编辑器深度解析:从DSL解析到可视化编排的完整架构
qt·架构·编辑器
十五年专注C++开发6 小时前
Qt实现带多选功能的组合复选框
开发语言·c++·qt·qcombobox
柳鲲鹏6 小时前
QT:正确延时调用,Cannot create children for a parent that is in a different thread.
服务器·数据库·qt
(Charon)6 小时前
【C++/Qt】Qt 实现 WebSocket 测试工具:连接、消息收发与通信日志
c++·qt·websocket