2012-08-10 1225 views
1

我需要绘制实时图形来保持背景图像。假设我正在用红色绘制图形。使用QPainter在QPixmap上绘制图形

但我用于绘图的逻辑是使用painter.drawline绘制小线,其中painter是一个pixmap画家。然后,我不断使用画家将这个像素图绘制到定时器timeout()事件的父窗口小部件上。所以它看起来更新的图像(这是图)被绘制在Gui中。

像素图在背景中是黑色的,并且绘制笔的颜色是红色的,所以当它到达屏幕宽度的末端时,我必须从位置0开始绘制图形,但是从第二个周期开始,我必须先填充用黑色绘制像素(不是整个像素图,只是宽度的几个像素和高度,像素图的高度)。

但现在我需要保留背景图像,并在其上绘制图形。所以用黑色填充颜色是不行的,因为我必须保留背景图像。那么如何在上述图像上绘制图形呢?

有什么办法可以混合两幅图像,使得源图像中只有特定颜色(红色)的像素被混合/替换为目标图像中的相应像素?

回答

0

保留先前在内存中绘制的Ys,而不是通过相应的背景填充完全相同的像素。它更快,更可靠。