我现在正在使用QGraphicsView。我想绘制一个大的(如45k点)多边形作为背景。以前,我使用OpenGL和VBO绘制它。现在我不能让OpenGL与QPainter一起工作,我也找不到在Qt中绘制多边形的有效方法。我已经覆盖了QGraphicsView :: drawBackground()方法,但我不知道下一步该怎么做以及如何让OpenGL在那里工作。当我第一次尝试创建VBO时,调用painter-> beginNativePaiting()会导致段错误。你可以给我任何提示,以便我可以继续吗?
答案 0 :(得分:0)
在QGraphicsView
中使用OpenGL渲染文档说明如下
To render using OpenGL, simply call setViewport(new QGLWidget)
添加QPolygon
我会尝试使用
QGraphicsPolygonItem * addPolygon ( const QPolygonF & polygon, const QPen & pen = QPen(), const QBrush & brush = QBrush() )
并将其设置为背景,您只需设置所创建项目的z-order
...就像
void setZValue ( qreal z )
欢呼Zai