2010-12-10 64 views
0

我想爲各種函數繪製y = f(x)的曲線,並且我希望繪圖的質量儘可能好。也就是說,爲了提高性能,我寧願避免在Java代碼中渲染單個像素。用於平滑繪圖的算法(Java2d)

換句話說,我想擠出與Java2D一樣多的質量。

目前我正在計算x方向上每個像素的float(x,y)值。然後我通過在這些點之間繪製線來創建一個Shape(使用點座標的浮點值)。我已經提出了雙線性插值,抗鋸齒和質量渲染的提示。

結果並不可怕,它只是可以通過,但我已經看到更好。我認爲問題是,即使我使用浮點座標,我實際上是繪製了一個多邊形,所以只有很多Java2D可以做。

還有什麼我可以做的改善呢?

+0

我們可以得到結果的屏幕截圖嗎? (否則很難說它是如何改進的。) – aioobe 2010-12-10 22:39:20

回答

1

當我在大學學習計算機圖形時,我們做了一個基於「Bézier曲線」的課程。它可能是你正在尋找的算法。在這裏尋找更多細節:

http://en.wikipedia.org/wiki /Bézier_curve

基本上它是一種如何與平滑的曲線代替多邊形。