ユーザーからの座標を受け取り、画面上に星 (*) でいくつかの図形を描画するプログラムを作成しています。
例: Rectangle (つまり、rectangle = 100,150,50,50 as x,y,width,height)。どうすればできますか??
このチュートリアルはあなたにとって非常に役立つと思います: http://download.oracle.com/javase/tutorial/2d/geometry/primitives.html
「星で描く」とは?これが等幅フォントのテキスト モードである場合は、正しい長さを計算して星の水平線で印刷する必要があります。長方形の場合は簡単ですが、三角形の場合は少し難しく、五角形は長方形といくつかの三角形を組み合わせたものです。インスピレーションについては、ブレゼンハム アルゴリズムを参照してください。
また、テキスト モードの解像度が非常に低いことにも注意してください。標準の端末ウィンドウの幅はわずか 80 文字であり、200 ~ 300 文字よりもはるかに広くすることはほとんどできないため、正しい丸めが重要です。
長方形だけの場合は、ペイントメソッドに次のように入力すると機能するはずです...
int xIncrement = (int)g.getFont().getStringBounds("*", null).getWidth();
int yIncrement = (int)g.getFont().getStringBounds("*", null).getHeight();
for(int i = y; i < y + height; i += xIncrement)
for(int j = x; j < x + width; j += yIncrement)
g.drawString("*", j, i);
三角形やその他の形状の場合は少し難しいですが、ポイントを区切る線の勾配を把握できるため、各線の最初のxを取得できます。
一般的に、「星の描画」は避けてください...
GUI について言及していない限り、Y 座標は「スキップ」しなければならない行の量であり、x 座標は行に入力したスペースの量に似ています。
したがって、基本的に x = 2 および y = 3 は、3 行下に移動し、右に 2 スペース移動する必要があることを意味します。
以下はjavadocから
x - この Rectangle の左上隅の新しい x 座標 y - この Rectangle の左上隅の新しい y 座標