[previous page]


今回から見えないとつまらないだろうということでJAVAでの課題になります。
以下をダウンロードして、すべてのファイルをコンパイル後にConvexHullを実行してください。

ソースファイルの提出は特に変更がなければ DrawPanel.java のみで結構です。

ConvexHull.java MainPanel.java DrawPanel.java

以下の画面が表示されます。



左ボタンをクリックすると点が描画されます。

以下に実行例を示しますが、WindowsXP上での実行画面ですので、多少異なります。



課題は左上から方法を選んでConvexHullを作成できるようにすることです。
DrawPanel.java の Burute Force (直接法)、Graham関数の中にプログラムを書き入れてください。
なお、7、8(包装法、逐次添加法、内点消去後の分割統治法)を演習として選ぶ方は、
関数名を変更して行ってください。(こだわらないならそのままでもできますが。)

デフォルトでは一点目と二点目を結ぶ線を描く関数になっています。 線を描く方法の参考にしてください。




完成しましたら、「点以外をクリア」を選んで同様の点の状態のまま他の方法でもConvexHullを作成し、比べてみてください。

直接法実行例:




Last updated: 2004/10/01