コンピュータグラフィックス特論 課題


下記のプログラミング課題において4問中少なくとも3問を提出せよ。

プログラミング課題

インタラクティブ性のあるプログラムが理想であり、それを遠隔地でも評価するにはJavaで作成すると効果的であるので、可能な人はできるだけJavaAppletを試みて下さい(この場合画像サイズは300x300以下でもよい)。C言語とOpenGLを用いて表示する方法でもよい。 この際、出力例がカラー画像の場合、それを評価して欲しい人は、自分のホームページに画像を置いて見れるようにしてもよい。
注; 誤字等があれば訂正するので、このページを更新するので再度確認して課題を提出してください。
/~nis/junk/lecture/VisRep06.html

課題1 Bezier曲線、Bスプラインの描画プログラムを作成せよ。

課題2 2次元空間でテクスチャマッピングを行うプログラムを作成せよ。


図2 テクスチャマッピング 左:用意した元テクスチャ 真中:4点を指定 右:指定した4点による4角形にテクスチャをマッピング

課題3 レイトレーシング法を実装せよ。

  課題4 フラクタルの関する下記プログラムを作成せよ。

JavaやX-windowの使用方法を勉強する時間のない場合は、次の方法でもよい。すなわち、スクリーンを想定した配列を準備し、それに輝度情報を書き込み、準備したツールで可視化する。画像サイズは500x400程度とする。ただし、プログラムリストと結果のハードコピー(PostScript形式にしプリント)を提出すること。この際、画像をセーブすることが必要になるが、保存の画像形式およびそのプログラムは資料を参考にして下さい。

参考資料(配布資料)

 

U レポート課題

  1. 隠面消去法の一つに、優先順位法(またはペインターズアルゴリズム)という方法がある。この方法を多角形の描画に利用する場合、計算できないケースがある。それはどんなケースか説明せよ。
  2. Bezier曲線に関する下記の問題を解け。
    • n次のBezier曲線とm次のBezier曲線を乗じるとBezier曲線になることを証明せよ。また、何次の曲線になるか?
    • 放物線を2次の有理Bezier曲線で表す場合、制御点と重みを算出する式を求めよ。
    • 2次のBezier曲面Cと直線Lとの交点を算出する式を導出せよ 。また、交点での法線を算出せよ。
  3. 自然物のCG画像を作成する際、リアルな画像得るにはどんな要素が重要であるか述べよ。

参照URL

締切: 2月17日(金曜)  結果は各自のホームページに置くか、印字して事務室に提出、あるいはメイルに添付して下さい。

連絡先:email: nis@is.s.u-tokyo.ac.jp 電話: 内線24106 (西田研究室): /~nis/