アンチエイリアス処理された円を描画するための適切なアルゴリズムは何ですか? (満たされたものと満たされていないもの。)
11104 次
3 に答える
10
Bresenham (直線アルゴリズムで有名) も円アルゴリズムを持っていました。
Xiaolin Wu は、ライン アルゴリズムをアンチエイリアシングに適用し、同様に円アルゴリズムにも同じことを行いました。
http://en.wikipedia.org/wiki/Xiaolin_Wu%27s_line_algorithm
次の検索で円アルゴリズムを見つけることができます。
http://www.google.com/search?q=Xiaolin%20Wu%20circle
-アダム
于 2009-01-27T23:36:32.163 に答える
5
簡単なものが必要な場合は、ピクセル マトリックス A からピクセル マトリックス B にソフト ブラーを作成します。
これは私が使用したものです(ここでは疑似コードで)
anti_alised_matrix[x][y] = point[x][y] / 2 + point[x+1][y]/8 + point[x-1][y]/8 + point[x][y-1]/8 + point[x][y+1]/8;
もちろんこれはグレースケールにも当てはまりますが、RGB でも同じことが簡単にできます。
これは本当に非常に単純なものです。対角線、つまり [x+1][y+1] を追加して、16 または 32 で分割することもできます。
于 2009-01-27T23:23:45.810 に答える
-11
Graphics オブジェクトを作成します g. 行う
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
g.FillEllipse または g.DrawEllipse でアンチエイリアス円を描画します
于 2009-01-27T23:27:40.683 に答える