点(0,0)から点(10,5)までの線分を描画したいです。
全然方法が思いつきません( ;∀;)
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/17 09:06
回答4件
0
情報の追加・修正依頼にも他の方がコメントされていますが、課題の場合はまずググる(先輩方のブログなど)を参考にして’考え方’と’解決方法’。私の会社では’思考過程’と呼んでいますが。
例としてjava 直線 描画’でググってみても色々出ます。
その一例として
直線を描画する(Line2Dクラス)
これを試して、体得する。
もし社会に出て、教える方も周りにいなかったら自分で解決するしかないのですから。今がチャンス。
投稿2016/11/17 09:44
総合スコア3747
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
各座標に1つづつ点(ドット)を描画する前提で:
直線描画には ブレゼンハムのアルゴリズム(Bresenham's line algorithm) という有名なアルゴリズムがあります。
投稿2016/11/17 12:14
総合スコア6191
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
Javaで図形などの描画をするためには(標準的な機能としては)JavaFXとswingといったライブラリーを使います。最新のバージョンではJavaFXが標準で、swingのサポートは凍結されていると思います。
最も簡単なプログラムとしてよくでてくる「Hello world」的なものとは異なり、グラフィックス関連のプログラムは数行では書けないですしより多くのクラスや前提知識が必要になるのでJavaFXやswingの入門書などで基本から学ぶとよいです。趣味でやる分にはJavaFXでもswingでもどちらでも(とりあえずは)いいと思います。
投稿2016/11/17 11:32
総合スコア18394
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
以下のコードで線分を引く事はできますが
点(0,0)から点(10,5)まで
には線を引いても表には出て来ません 恐らくその座標は開いたウインドウの端の部分(上端×ボタン等が描かれる部分)に含まれるからです
線は引けるけどその位置にウインドウの構成を無視してあえて引きたいという質問だったなら、その方法は分かりません
java
1import java.awt.*; 2import javax.swing.*; 3 4class D extends JFrame 5{ 6 public Color color1; 7 8 9 public static void main(String args[]) 10 { new D(); 11 } 12 13 public D() 14 { super("D"); 15 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 16 color1 = new Color( 0, 0, 0 ); 17 setSize(600, 400); 18 setVisible(true); 19 } 20 21 22 public void paint(Graphics g) 23 { super.paint(g); 24 g.setColor(color1); 25 g.drawLine(10,10,100,50);//(x1,y1,x2,y2)で(x1,y1)-(x2,y2)の線を引く 26 } 27} 28
投稿2016/11/17 10:53
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。