ゲームプログラムなら俺に聞け32©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0688デフォルトの名無しさん
2015/12/23(水) 22:57:03.39ID:2+dP2nJG残念ながら、その draw 関数では円は描けないよ。
r の値がある程度以上大きいと円周は断裂する。
だから、あるピクセルが描かれた円の中かどうか正確に判断できない。
穴があかない程度のサイズしか使わないからこの関数を使った円で考えたい
というのであれば、この関数をちょっと改造することでピクセル数が数えられる。
for ループの中で、x1 の整数部分が変化する直前の i の時の y1 の整数部分、
この値を記録し、x1 が変化する毎に足していく。
この処理を i が 90 を超えるまで続ける。
(x1 と y1 の役割を交換してもいい)
そうやって足し合わせた値を利用すればピクセル数が計算できそうなことは理解できるよね。
ただ2点注意。
・円の中心は (0, 0) ではなく (x, y) であること。
・引数の y を通る x 軸に平行なピクセルの列と、
引数の x を通る y 軸に平行なピクセルの列を重複して数えないように。
■ このスレッドは過去ログ倉庫に格納されています