ポリゴンを塗りつぶしたい場合は、Google検索で効率的なアルゴリズムhereが得られます。 SDL2_gfxのやり方をコピーすると、ソースにアクセスできるようになりますか?円を描画するための
は、そこthe Midpoint Circle algorithmは、さらにいくつかのコードを与えられている:
void DrawCircle(int x0, int y0, int radius)
{
int x = 0, y = radius;
int dp = 1 - radius;
do
{
if (dp < 0)
dp = dp + 2 * (++x) + 3;
else
dp = dp + 2 * (++x) - 2 * (--y) + 5;
putpixel(x0 + x, y0 + y, 15); //For the 8 octants
putpixel(x0 - x, y0 + y, 15);
putpixel(x0 + x, y0 - y, 15);
putpixel(x0 - x, y0 - y, 15);
putpixel(x0 + y, y0 + x, 15);
putpixel(x0 - y, y0 + x, 15);
putpixel(x0 + y, y0 - x, 15);
putpixel(x0 - y, y0 - x, 15);
} while (x < y);
}
しかし、何が本当に行われるべきことはSDL2_gfxをコンパイルの問題を解決する上で助けを求めています。 SDL2_gfxのソースファイルをプロジェクトに直接入れることはできませんか?プロジェクトのサブフォルダに入れることができるファイルは4つだけです。
あなたは、SDL2_gfxのコンパイル済みバージョンはあなたのために働いていないと言いました。他の誰かがそれを編集したら、それはうまくいくと思うのはなぜですか? – HolyBlackCat
私はSDL2_gfxをコンパイルできないと言った。つまり、私はSDL2_gfxを試すことができませんでした。しかし、あまりにもあいまいなので、私は投稿を修正します。 –
[円を描く](https://en.wikipedia.org/wiki/Midpoint_circle_algorithm)に。シェイプを塗りつぶすには、ピクセル単位で行うのは可能ですが非常に非効率的です。あなたは、SDL2_gfxをコンパイルし、エラーの助けを借りて時間を費やすことをお勧めします。 – coyotte508