私はすべての動きがグリッドベースのゲームを作っています。私はまた、サークル内を周りを回ることができるエンティティを作ることを望んでいません。だから、誰かが正方形のグリッドから円を作成するための提案があります(MS Paintがサークルツールを使用して正方形のピクセルから円を描くように)。グリッド上で円を描くにはどうすればいいですか?
8
A
答えて
13
チェックアウトMidpoint circle algorithmを確認してください。
3
ここは私のJava実装のBressenham's Midpoint Circleアルゴリズムです。
private void drawCircle(final int centerX, final int centerY, final int radius) {
int d = 3 - (2 * radius);
int x = 0;
int y = radius;
Color circleColor = Color.white;
do {
image.setPixel(centerX + x, centerY + y, circleColor);
image.setPixel(centerX + x, centerY - y, circleColor);
image.setPixel(centerX - x, centerY + y, circleColor);
image.setPixel(centerX - x, centerY - y, circleColor);
image.setPixel(centerX + y, centerY + x, circleColor);
image.setPixel(centerX + y, centerY - x, circleColor);
image.setPixel(centerX - y, centerY + x, circleColor);
image.setPixel(centerX - y, centerY - x, circleColor);
if (d < 0) {
d = d + (4 * x) + 6;
} else {
d = d + 4 * (x - y) + 10;
y--;
}
x++;
} while (x <= y);
}
ロゼッタサイトでフルクラスの実装とその他の多くの言語の例が見つかります。 http://rosettacode.org/wiki/Bitmap/Midpoint_circle_algorithm
関連する問題
- 1. アニメーションでwinRTで円弧を描くにはどうすればいいですか?
- 2. Unity3Dで円を描くにはどうしたらいいですか?
- 3. CoreGraphicsを使用して半円を描くにはどうすればいいですか?
- 4. コロナのルアで円の線分を描くにはどうすればよいですか?
- 5. CSSキャンバスでスライドショーフレームを描くにはどうすればいいですか?
- 6. openLayersで水平線を描くにはどうすればいいですか?
- 7. PaperJSで単純な2Dグリッド(非インタラクティブ)を描くにはどうすればよいですか?
- 8. Cで線形上に円を描く#
- 9. 半径を指定して円と矩形を描くにはどうすればよいですか?
- 10. リストからキャンバスを描くにはどうすればいいですか
- 11. iReportに縦線を描くにはどうすればいいですか?
- 12. UIImageを楕円形や円形に切り抜くにはどうすればいいですか?
- 13. LWUIT Painter:イメージラベルの上に線を描くにはどうすればいいですか?
- 14. 楕円の円周上の点を計算するにはどうすればよいですか?
- 15. matlabのツリーレイアウトでグラフを描くにはどうすればよいですか?
- 16. Androidで円を描いて円を描く
- 17. 円で円を描く
- 18. HTML5キャンバス描画アプリケーションで円形の「ブラシチップ」を作成するにはどうすればよいですか?
- 19. 円軌道上でuiviewを移動するにはどうすればいいですか?
- 20. シヌソイド線グラフを描くにはどうすればよいですか?
- 21. PlayNで画面に円を描くにはどうしたらいいですか?
- 22. グリッドの行を選択するにはどうすればいいですか?
- 23. 線を描くにはどうしたらいいですか?
- 24. フォームに線を描画するにはどうすればいいですか?
- 25. WebGLシェーダの描画された円/楕円に一定の幅の輪郭を追加するにはどうすればいいですか?
- 26. チェックボックスを円形にカスタマイズするにはどうすればよいですか?
- 27. テキストラップを円の形にするにはどうすればよいですか?
- 28. プロットされた円をRで小さくするにはどうすればよいですか?
- 29. css、javascriptで円の周りに円を作成するにはどうすればよいですか?
- 30. 折れ線の少ないグラフを描くにはどうすればいいですか?