qglwidget相关内容

QGLWidget 的paintGL 什么时候调用?

我能找到的只是“每当需要绘制小部件时." 具体是什么时候? 解决方案 当您在小部件(或 update())或 Qt 上调用 updateGL() 时决定重绘你的小部件.Qt 可能选择要求重绘的原因包括: 您的小部件被调整大小 您的小部件已隐藏并再次显示 您的小部件被最小化然后恢复 其他东西放在您的小部件前面,然后移开 月亮在上弦 远处的蝴蝶扇动了翅膀 ... ..
发布时间:2021-12-19 18:40:01 其他开发

坐标变换和投影问题

我一直在尝试将鼠标坐标转换为 OpenGL 场景中的 3D 空间坐标. 目前,我的投影有点乱(我认为),当我在场景中移动时,它似乎没有完全考虑到我的“相机".为了检查这一点,我画了一条线. 我的调整大小功能: void oglWidget::resizeGL(int width, int height){如果(高度== 0){高度 = 1;}pMatrix.setToIdentit ..
发布时间:2021-11-25 04:22:42 C/C++开发

坐标变换和投影问题

我一直在尝试将鼠标坐标转换为 OpenGL 场景中的 3D 空间坐标. 目前,我的投影有点乱(我认为),当我在场景中移动时,它似乎没有完全考虑到我的“相机".为了检查这一点,我画了一条线. 我的调整大小功能: void oglWidget::resizeGL(int width, int height){如果(高度== 0){高度 = 1;}pMatrix.setToIdentit ..
发布时间:2021-11-25 04:08:28 C/C++开发

切掉QGLWidget?

是否可以切割QGLWidget?我的意思是我想削减它,以便我可以访问下面的gui.听起来很奇怪,但是将我的QGLWidget分为两部分对我来说是很多工作.我希望你明白我的意思.谢谢 解决方案 我不完全理解您在下面的“剪切"和GUI的意思.在使用适当布局机制的Qt中,小部件会占用其覆盖的区域,并且其下方没有小部件. 是否要将多个视图呈现到单个QGLWidget中?正确使用 glView ..
发布时间:2020-07-05 01:09:41 其他开发

如何全屏显示QGLWidget?

我有一个QGLWidget作为应用程序UI的一部分.它不是不是中央小部件,周围还有许多其他小部件.我想在用户单击按钮时全屏显示它.类似于youtube video Flash Player上的功能. 我尝试使用 showFullScreen 无效. 我已阅读 how-to-fullscreen-a-qglwidget 和 fullscreen-widget ,但他们建议使用showFu ..
发布时间:2020-07-05 01:08:29 其他开发

QGlWidget全屏无菜单

我有一个应用程序,它是单个QGlwidget,并在需要时创建了右键单击QMenu. 数据绘制在重写的paintEvent() 中 但是在全屏模式下不会显示菜单. 我最好将QGraphicsScene作为父窗口,将QGlWidget作为唯一的子窗口吗? 解决方案 有此Qt的错误列表上的错误报告,似乎与您的问题有关.该错误将其描述为NVidia卡可能的驱动程序问题.看起来也有解决方法. ..
发布时间:2020-07-05 01:07:24 其他开发

QGLWidget在Mac OS X Lion下无法正常工作

如您所见-我不知道为什么它根本不起作用. 程序运行时将如下所示:我正在使用来自Macports的qt4-mac(v4.8.2).似乎该软件包已预先编译. 这是来源: main.cpp: #include #include #include "GLPlayerWindow.hpp" int main(int argc, ..
发布时间:2020-07-05 01:07:20 其他开发

共享OpenGL资源的策略

我正在创建一个类似CAD的应用程序(基于Qt),它将是一个多文档界面,每个文档将包含大约5个视口(来自QGLWidget).因此,我需要在整个应用程序中共享平面着色器,然后在每个文档(即5个视口)之间共享3D资产(存储为VBO的模型). 我以为只要共享着色器程序和VBO GLuint地址,所有内容都可以自动工作-不能.我认为,因为每个视口/上下文在图形卡上都有其自己的地址空间,如果有人知道, ..
发布时间:2020-07-05 01:07:16 其他开发

如何在QGLWidget中寻找OpenGL的等效功能?

我是OpenGL和Glut的新手.有一个由Glut实施的项目.我搜索了一下,发现在Qt中有一个称为QGLWidget的OpenGL实现.但是,对于我来说,将旧的Glut代码转换为新的Qt代码非常困难,因为我不知道如何在Qt中找到与Glut函数等效的函数.部分代码如下所示: glutInit(&argc,argv); glutInitDisplayMode(GLUT_DOUBLE|GLUT_R ..
发布时间:2020-07-05 01:07:14 其他开发

将Qt集成到预先编写的应用程序/框架中

我有一个用c ++编写的小型可视化框架,并希望使用Qt拥有适当的GUI并控制我的可视化与之交互.目前,我正在使用GLUT创建一个窗口并在其中绘制视图.因此,我要做的就是初始化Visualization类的对象,该对象为我完成所有工作:保存模型和视图.视图本身拥有一个控制器来处理用户输入并操纵模型.我的主循环看起来像这样: Visualization* vis = new Visualizat ..
发布时间:2020-05-20 23:56:47 其他开发

选择模式下的OpenGL拾取

我知道OpenGL选择模式已被弃用,并且从来没有被硬件加速过,除了一些SGI盒子和3DLabs GPU之外,但是我无法摆脱它(不是我的代码),下面是C ++代码: void GLWidget::Selection(int x,int y) // This Is Where Selection Is Done { ..
发布时间:2020-05-20 23:37:59 C/C++开发

如何共享OpenGL上下文或数据?

我需要在应用程序中的所有OpenGL小部件之间共享数据(纹理,顶点缓冲区等). 以下代码不起作用: 我发现一些具有一个主QGLWidget的解决方案,而其他解决方案是使用此主窗口小部件构造的.不幸的是,我不能使用这种方法,因为我所有的QGLWidgets都是相同的,并且几乎可以肯定,第一个(主要)创建的QGLWidgets将在其他QGLWidgets之前被销毁. 可能的方法: ..
发布时间:2020-05-20 23:24:40 C/C++开发

共享OpenGL VAO/VBO/etc通过QGLWidget

我正在使用QGLWidgets的3层层次结构在类似CAD的应用程序的5个OpenGL视口之间共享着色器和顶点数据.根上下文用于编译应用程序范围的着色器,每个文档上下文用于共享模型顶点数据,而视口上下文是实际进行渲染的对象(还包含网格顶点数据和每个视口的其他内容). 着色器共享似乎工作正常,网格绘图也是如此,但是在共享顶点数据时却失败了,说实话-我看不到它应该如何工作... 在模型上下文 ..
发布时间:2020-05-20 22:56:48 其他开发

如何缩放glDrawPixels?

我需要缩放glDrawPixels图像的结果. 我正在Qt QGLWidget中使用glDrawPixels绘制640x480像素的图像缓冲区. 我尝试在PaintGL中执行以下操作: glScalef(windowWidth/640, windowHeight/480, 0); glDrawPixels(640,480,GL_RGB,GL_UNSIGNED_BYTE,frame ..
发布时间:2020-05-20 22:55:16 其他开发

如何获取可靠的QGLWidget快照

在我的应用程序中,为两个目的拍摄QGLWidget内容的快照: 仅当覆盖层发生变化时,不要一直重绘场景,而是使用缓存的像素图 让用户拍摄特定场景(3D场景)的屏幕截图 我尝试的第一件事是grabFrameBuffer().对于第一个应用程序自然使用此功能,当前在小部件中可见的正是我要缓存的内容. 问题:在某些硬件上(例如Intel集成图形,带有GeForce图形的Mac OS X), ..
发布时间:2020-05-20 22:49:22 C/C++开发

QGLWidget的paintGL何时调用?

我能找到的就是“每当需要绘制小部件时". 具体是什么时候? 解决方案 当您在窗口小部件(或update())上调用updateGL()时,或者只是Qt决定重绘窗口小部件. Qt选择重新提款的原因包括: 您的小部件被调整大小 您的窗口小部件已隐藏并再次显示 您的窗口小部件已最小化,然后又恢复了 其他东西放在小部件的前面,然后移开 月亮在第三季度 远处的蝴蝶拍打着翅膀 ..
发布时间:2020-05-20 21:59:34 其他开发

鼠标事件由于QGL视图而被阻止

我创建了一个简单的项目来显示我在更大的应用程序中遇到的问题. 因此,我创建了一个带有2个按钮的主窗口.我创建了一个从QWidget继承并带有2个按钮和QGL视图的类. 问题是,显然由于某种原因(我找不到),此QGL视图的创建阻止了视图的某些事件,尤其是鼠标事件.在下面的代码中,未检测到按钮和类1的主窗口小部件上的鼠标悬停事件(光标必须分别从“箭头"变为“手"并等待),而鼠标光标在“主窗口"按钮 ..
发布时间:2020-05-12 19:06:47 其他开发