2013-10-03 15 views
1

我試圖在pygame 1.9.1release中生成一個反鋸齒圓,所以我沒有訪問pygame.gfxdraw,我也沒有真正感覺使用這個子模塊,因爲它明確標記爲實驗。我如何在包含在numpy數組中的antialias圈?

這已經有人說過了,我想生成一個反鋸齒的圓,所以我想知道是否有一種方法可以實現這一點,使用pygame參考numpy數組中的像素的能力。

下面是這樣的一個圓圈的例子。將包含圓的醃泡狀數組作爲3D數組(第三維代表RGB值)可以找到here

Aliased circle drawn by pygame

我的問題如下:我怎樣才能順利的圈子我有畫的邊緣,最好使用numpy的?

+0

我沒有使用pygame.gfxdraw的經驗,但是一個反鋸齒技巧(例如OpenGL)是將該行混合到背景。另一個想法是使用預先生成(光滑)的圓形圖像作爲紋理。 –

+1

@ M-V,你的評論讓我有點困惑 - 我沒有訪問pygame.gfxdraw,我特別要求如何在沒有該模塊的情況下實現這個*。就目前而言,將線條與背景相融合的想法聽起來像是一個非常好的選擇 - 我應該如何去做這件事? – blz

+0

對不起,我誤解了你的帖子。但我認爲你找到了一個解決方案。我所建議的可能需要改變太多的東西,但也許你可以做一些關於opengl反鋸齒的研究。 [這裏](http://stackoverflow.com/questions/3512456/how-to-draw-smooth-line-with-antialias)是一個相關的SO帖子。 –

回答

0

Here是一個使用吳的算法的解決方案。

它似乎很有希望,所以我會給它一個鏡頭,並接受我自己的答案,如果它按預期執行。

相關問題