BTU Cottbus
Institut für Informatik
Prof. Dr. W. Kurth, Dr. E. Roth
Computergrafik, WS 2001/02
Übungsblatt 6
Bearbeitung durch je 2 Personen gemeinsam erlaubt + erwünscht
(bitte nur 1 mal pro Gruppe abgeben).
Abgabe der Lösung (Java-Programm) bis Freitag, den 08. 02. 2002, 12:00 Uhr per e-mail
an Herrn Zhao,
Aufgabe:
Es soll eine Szene in Java 3D aufgebaut werden. Dabei sollen die folgenden Schritte umgesetzt werden. Jeder Schritt stellt eine Erweiterung der bereits erstellten Szene dar.
(a) Instanziierung und Darstellung eines Würfels mit der Kantenlänge 0,4 auf
Position (-0,6; 0; 0) und einer Kugel mit dem Radius 0,2 auf Position (0,6; 0; 0).
Vom Würfel sollen - in der Default-Ansicht - drei
Seitenflächen sichtbar sein. (5 P.)
Hinweis: Anders als vielleicht erwartet, sind die
beim Box-Konstruktor angebbaren
Längenspezifikationen die halben Seitenlängen der Box.
(b) Einfügen eines selbstgestalteten Tetraeders mit einer Ecke in (0; 0; 0). (4 P.)
(c) Ändern des Aussehens des Tetraeders durch Spezifikation der Farbe Gelb für die Seitenflächen. (1 P.)
(d) Einfügen einer weißen ambienten und einer roten punktförmigen Lichtquelle. Beide Lichtquellen sollen das Aussehen zumindest des Würfels und der Kugel beeinflussen. (4 P.)
(e) Durch den Einsatz eines Rotationsinterpolators soll die Punktlichtquelle in 3 Sekunden um die bestehenden Objekte kreisen. (4 P.)
Zusatzaufgabe:
(f) Stellen Sie sicher, dass auch das Aussehen des Tetraeders von der rotierenden
Punktlichtquelle beeinflusst wird.
(Informieren Sie sich dazu in der Java3D 1.2 API Dokumentation im Internet
(Klasse GeometryArray,
Methode setNormals) oder in der Literatur, wie Sie
die Ecken Ihres Tetraeders mit den für die Beleuchtungsrechnung benötigten
Normalenvektoren versehen können, und spezifizieren Sie dafür geeignete, nach
außen gerichtete Vektoren für die Ecken. Um ein brauchbares Rendering-Ergebnis
zu liefern, brauchen diese sich nicht exakt rechnerisch aus den Flächennormalen zu
ergeben.) (2 P.)