QGraphicsView上的透明QGLWidget

时间:2011-01-06 14:34:20

标签: qt qt4 qgraphicsview qglwidget

我正在使用QGraphicsView来显示2D图像,并且还有一个单独的QGLWidget窗口来显示一些3D对象。我正在根据3D对象的旋转动态更改`QGraphicsView'中显示的图像。

我想在2D图像上渲染一个半透明的3D对象,就像Maya 2009曾经做的那样(注意视口右上角的立方体):Maya 2009 screenshot http://www.boulevard-creation.com/images/2008/11/maya2009png.png

是否可以使用我当前的小部件执行此操作?如果没有,怎么办呢?

我能想到的一个选择是在QGLWidget中渲染所有内容并将2D图像显示为背景平面上的纹理,但这看起来有点痛苦。

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

将qgraphicsview的视口设置为qglwidget,然后在paint方法中,您可以直接使用gl调用来绘制3d对象。

请参阅http://doc.qt.io/archives/qt-4.7/qpainter.html#beginNativePainting