Qt使用OpenGL v1.4进行硬件加速的2D绘图?

时间:2013-08-28 18:06:53

标签: qt opengl directx qwt qcustomplot

我们的目标系统有一个只支持OpenGL 1.4的旧图形芯片。但是,对于高扫描速率的32K点示波器型图,我们确实需要硬件加速。 QCustomPlot和QWT都使用需要OpenGL ES 2.0或更高版本的QPainter类。有一个简单的方法吗?或者,是否有人知道我们可以使用的另一种绘图工具可以在OpenGL 1.4上加速?我们的目标是在Windows XP SP3上运行QT 5.0。

for (int i=0; i<SCAN_SIZE; i++)
    m_plotQmap->insert(i,QCPData(i,lScanData[scan_dataset][i]));
ui->myPlot->graph(0)->setData(m_plotQmap,true);
ui->myPlot->replot();

1 个答案:

答案 0 :(得分:2)

对于使用OpenGL 1.4的目标系统,我建议使用Qt4。在不满足最低要求时使用Qt5没有任何意义。但是使用Qt4,你的平台应该没问题。

除了OpenGL,Qt4 / X11的组合提供了硬件加速图形(Qt5 / X11没有!),但是你在Windows上......

Qwt 6.1引入了QwtPlotGLCanvas,您可以使用其中一个OpenGL绘图引擎进行渲染。在refreshtest示例中,您可以检查OpenGL的效果并将其与软件渲染器进行比较(将Updates设置为0)。

另请参阅Qwt的示波器示例,其中显示了逐步绘制曲线的实现。如果可以通过这种方式实现绘图,则可以获得非常高的刷新率 - 即使使用软件渲染器也是如此。