def __init__(self, *args): super(OpenGLScene, self).__init__(*args) self.renderer = Renderer(self, GL) self.initialised = False self.image = None return
class OpenGLScene(QGraphicsScene): sliders_changed = QtCore.Signal(tuple) rotation_changed = QtCore.Signal(tuple) def __init__(self, *args): super(OpenGLScene, self).__init__(*args) self.renderer = Renderer(self, GL) self.initialised = False self.image = None return def drawBackground(self, painter, rect): if not (painter.paintEngine().type() == QtGui.QPaintEngine.OpenGL or painter.paintEngine().type() == QtGui.QPaintEngine.OpenGL2): QtCore.qWarning('OpenGLScene: drawBackground needs a QGLWidget '\ +'to be set as viewport on the '\ +'graphics view') return painter.beginNativePainting() GL.glMatrixMode(GL.GL_PROJECTION) GL.glPushMatrix() GL.glMatrixMode(GL.GL_MODELVIEW) GL.glPushMatrix() self.renderer.render() GL.glMatrixMode(GL.GL_MODELVIEW) GL.glPopMatrix() GL.glMatrixMode(GL.GL_PROJECTION) GL.glPopMatrix() painter.endNativePainting()