2012-08-26 36 views
2

這是我讀到它,但不能確切地瞭解它做什麼:爲貫徹落實橡皮圈Graphics.setXORMode(Color)以簡單的方式做什麼?

的一種方法是XOR模式畫。通過爲圖形上下文調用setXORMode()方法並將 顏色傳遞給XOR模式(通常爲背景顏色),可以設置 XOR模式。在此模式下,像素不會直接寫入屏幕。您正在繪製的 的顏色與當前像素的顏色 一起顯示,並與您指定的第三種顏色一起顯示,排他性排列 或將它們組合在一起,然後將結果像素顏色寫入 屏幕。而第三顏色通常被設置爲背景色,所以 被寫入像素的顏色是以下 操作的結果:

resultant_Color = foreground_color^background_color^current_color

我知道異或如何工作的,但不要」不知道上面的段落是什麼意思。請爲我闡明它

+1

你在問[Graphics.setXORMode(Color)'](http://docs.oracle.com/javase/7/docs/api/java/awt/Graphics.html#setXORMode(java.awt) .Color)),對嗎? – Jeffrey

+0

是的,那正是我所問的! :) –

+1

@DummyDerp - 好吧,如果你這麼說的話,會有所幫助... –

回答

2

它需要一個顏色和應用一個XOR掩模就像一個普通的異或將位掩碼,除了它在RGB顏色,所以它會產生你傳遞的顏色,如果它覆蓋了顏色如果值不同,則使用相同的值或RGB和RGB顏色的相反值以及RGB以下的顏色。

只需編寫一些代碼並嘗試一下,它會立即顯示會發生什麼。

相關問題