下記のプログラミング課題において4問中少なくとも3問を提出せよ。
プログラミング課題
インタラクティブ性のあるプログラムが理想であり、それを遠隔地でも評価するにはJavaで作成すると効果的であるので、可能な人はできるだけJavaAppletを試みて下さい(この場合画像サイズは300x300以下でもよい)。C言語とOpenGLを用いて表示する方法でもよい。
この際、出力例がカラー画像の場合、それを評価して欲しい人は、自分のホームページに画像を置いて見れるようにしてもよい。
注; 誤字等があれば訂正し、このページを更新するので再度確認して課題を提出してください。
/~nis/junk/lecture/VisRep07.html ,
(English version)
; 2/8午後の P.Debebecの 講演の感想文で1課題に相当するように配慮します。
課題1 Bezier曲線の描画プログラムを作成せよ。
課題2 変数 6 次多項式方程式を、Bezier Clipping を用いて解くプログラムを作成せよ。
課題3 レイトレーシング法を実装せよ。
Phong shading |
JavaやX-windowの使用方法を勉強する時間のない場合は、次の方法でもよい。すなわち、スクリーンを想定した配列を準備し、それに輝度情報を書き込み、準備したツールで可視化する。画像サイズは500x400程度とする。ただし、プログラムリストと結果のハードコピー(PostScript形式にしプリント)を提出すること。この際、画像をセーブすることが必要になるが、保存の画像形式およびそのプログラムは資料を参考にして下さい。
参考資料
[1] 10/21の配布資料
[2] 参考論文;Nishitaら"Ray Tracing Trimmed Rational Surface Patches"(Proc. of SIG90)
/~nis/abs_sig.html#sig90"
[3] 11/29の配布資料
[4] 12/13の配布資料
U レポート課題
- n次の多項式をn次Bezier曲線に変換する方法を導出せよ 。
- Bezier曲線に関する下記の問題を解け。
- n次のBezier曲線とm次のBezier曲線を乗じるとBezier曲線になることを証明せよ。また、何次の曲線になるか?
- 放物線を2次の有理Bezier曲線で表す場合、制御点と重みを算出する式を求めよ。
- 2次のBezier曲面Cと直線Lとの交点を算出する式を導出せよ 。また、交点での法線を算出せよ。
- 自然物のCG画像を作成する際、リアルな画像得るにはどんな要素が重要であるか述べよ。
- フォトンマップ法とはどんな方法か、またどんな効果が得られる方法か述べよ。
- CGの研究に貢献した人物に関し、SIGGRAPHからの受賞者1人をあげてその業績を説明せよ。
参照URL
- Java文法; /~nis/junk/sougou/document/javaBunpou.htm
- Javaプログラム例解説: /~nis/junk/sougou/document/javaKadai.htm
- Java Applet集; /~nis/javaexampl/javaExmpl.shtml
- CG関連図書: /~nis/junk/cg_books.html
- 締切: 2月15日(金曜) 結果は各自のホームページに置くかメイルに添付、あるいは印字して事務室(理学部7号館1階;田村さん)に提出して下さい。
連絡先:email: nis@is.s.u-tokyo.ac.jp 電話: 内線24106 (西田研究室): /~nis/