我需要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的图形性能吗?
答案 0 :(得分:0)
假设网格没有变化,请使用QPainterPath进行构建,然后绘制它。
有没有办法通过一些设置来提升QT的图形性能?
是的,有几种方法,但这取决于你正在做什么。使用openGL通常要快得多not always。