2013-06-13 67 views
0

好了下一個問題我指的是這個代碼(它繪製一條線,在第10欄圖片:畫圖多次

def drawLine(): 
    for y in range(getHeight(pic)): 
    pixel = getPixelAt(pic, 9, y) 
    setColor(pixel, red) 
    show (pic) 

好了,所以我已經清楚地縮進秀(圖)一個標籤太所以我有它的工作,所以我不問如何修復代碼。我的問題是,當我把上面的代碼繪製一條線(這似乎是隨機的),大約10-50像素長我想知道爲什麼它會這樣做理論上,它不應該在每次迭代中顯示圖片的副本嗎?

+1

您使用了哪些庫? – abarnert

+1

我的第一個猜測是你只是在同一個地方展示10-50次相同的圖片,所以最後的9-49次沒有明顯的效果。想象一下,你拍攝了50張相同的非常薄,完全不透明的照片,並將它們堆放在桌子上,然後在堆疊上畫出一條紅線。它看起來就像使用1張照片一樣。 – abarnert

+0

@abarnert:如果你把這個評論放入一個答案中,我們可以對它進行評估,然後這個問題就不會被歸類爲未答覆。我認爲你的回答是正確的,或者沒有OP的進一步信息,我們就可以得到答案。 – LarsH

回答

1

不知道你在使用什麼庫,在這些對象中,不可能做更多的猜測......但是一個猜測似乎很有道理。

您似乎在同一個(未指定的)位置顯示相同的圖片,10-50次(取決於其高度)。所以最後的9-49次沒有明顯的效果。你只是將每個像素都拍攝到已存在的相同像素上。 (這裏假定你沒有任何Alpha透明度。)

同時,你在(9,0)處畫一個紅色像素,然後在(9,1)處畫一個紅色像素,直到( 9,10)或(9,50),或者圖像的高度。所以,在圖片上或旁邊畫一條紅線。

想象一下,您將50張完全相同的完全不透明的完美不透明的照片打印出來併疊放在您的桌子上,然後在堆疊旁邊或旁邊劃出一條紅線。它看起來與將一張照片打印在桌面上並在其旁邊或旁邊繪製一條紅線相同。這正是你所看到的。