绘制网格效率最高的是什么?

时间:2016-06-02 08:29:43

标签: c++ qt

我需要QGraphicsView上的网格,并且我每35ms更新一次我的画布。 如何生成性能最佳的网格?

我现在正在使用它:

//vertical lines
    for(double i = 0; i < global::circuitWidth; i+= global::gridSize)
    {
        painter->drawLine(global::mmToPixel(i-global::circuitCornerX), -            global::mmToPixel(global::circuitCornerY),   global::mmToPixel(i-global::circuitCornerX), global::mmToPixel(global::circuitHeight-global::circuitCornerY));
    }
    //horizontal lines
    for(double i = 0; i < global::circuitHeight; i+= global::gridSize)
    {
        painter->drawLine(-global::mmToPixel(global::circuitCornerX), global::mmToPixel(i-global::circuitCornerY), global::mmToPixel(global::circuitWidth-global::circuitCornerX), global::mmToPixel(i-global::circuitCornerY));
    }

现在我意识到我之前可以计算一些参数,但除此之外还有什么?也许创建一个抽象的图像而不是线条?

还有一种方法可以通过一些设置来提升QT的图形性能吗?

1 个答案:

答案 0 :(得分:0)

假设网格没有变化,请使用QPainterPath进行构建,然后绘制它。

  

有没有办法通过一些设置来提升QT的图形性能?

是的,有几种方法,但这取决于你正在做什么。使用openGL通常要快得多not always