2012-08-10 178 views
1

我需要繪製實時圖形來保持背景圖像。假設我正在用紅色繪製圖形。使用QPainter在QPixmap上繪製圖形

但我用於繪圖的邏輯是使用painter.drawline繪製小線,其中painter是一個pixmap畫家。然後,我不斷使用畫家將這個像素圖繪製到定時器timeout()事件的父窗口小部件上。所以它看起來更新的圖像(這是圖)被繪製在Gui中。

像素圖在背景中是黑色的,並且繪製筆的顏色是紅色的,所以當它到達屏幕寬度的末端時,我必須從位置0開始繪製圖形,但是從第二個週期開始,我必須先填充用黑色繪製像素(不是整個像素圖,只是寬度的幾個像素和高度,像素圖的高度)。

但現在我需要保留背景圖像,並在其上繪製圖形。所以用黑色填充顏色是不行的,因爲我必須保留背景圖像。那麼如何在上述圖像上繪製圖形呢?

有什麼辦法可以混合兩幅圖像,使得源圖像中只有特定顏色(紅色)的像素被混合/替換爲目標圖像中的相應像素?

回答

0

保留先前在內存中繪製的Ys,而不是通過相應的背景填充完全相同的像素。它更快,更可靠。