Sommersemester 2016
Computergrafik
Günter
Rote
Impressum
(18.10.)
Die Klausur vom Freitag, den 14. Oktober 2016, ist korrigiert und die Punkte sind im KVV eingetragen. Die Note ergibt sich aus dem Notenspiegel.
Die Einsicht (auch in die erste Klausur) ist am Mittwoch, den 19. Oktober, von 10:00-10:30 im Seminarraum 053 (Informatikgebäude, Takustraße 9) möglich.
(12.10.)
Die Klausur am Freitag, den 14. Oktober 2016 von 16:15-17:45 Uhr (90 Minuten)
findet im Hörsaal Informatik statt.
Allen angemeldeten Teilnehmerinnen und Teilnehmern ist der zugewiesene Platz
heute per email mitgeteilt worden.
Die Platznummer beziehen sich auf den
Sitzplan, der zusätzlich in den Hörsälen ausgehängt wird.
Bringen Sie Ihren Studierendenausweis und einen amtlichen Lichtbildausweis mit.
Sie dürfen ein handschriftlich beschriebenes A4-Blatt mit Ihren
Notizen (zweiseitig beschrieben) als Gedächtnisstütze verwenden.
(19.8.)
Die erreichte Punktezahl bei der Klausur vom 29. Juli ist im KVV
eingetragen. Der Notenspiegel
bestimmt, wie sich daraus die Note ergibt. Für die
Klausureinsicht gibt es zwei Termine. Mittwoch, 24. August, 10-11
Uhr, und Freitag, 7. Oktober, 10-11 Uhr (eine Woche vor der
Nachklausur), und zwar im Seminarraum 055.
Die Kriterien für die aktive Übungsteilnahme sind ebenfalls im KVV-System vermerkt. Bitte überprüfen Sie Ihre Eintragung.
Die Noten werden in der Regel erst nach der Nachklausur und der zugehörigen Einsicht in das Campus-Management-System übertragen.
(27.7.)
Die Klausur am Freitag, den 29. Juli 2016 von 12:15-13:45 Uhr (90 Minuten)
findet im Hörsaal 2, Rostlaube, Habelschwerdter Allee 45, 14195 Berlin, statt.
Allen angemeldeten Teilnehmerinnen und Teilnehmern ist der zugewiesene Platz
heute per email mitgeteilt worden.
Die Platznummer beziehen sich auf dem
Sitzplan, der zusätzlich in den Hörsälen ausgehängt wird.
Bringen Sie Ihren Studierendenausweis und einen amtlichen Lichtbildausweis mit.
Sie dürfen ein handschriftlich beschriebenes A4-Blatt mit Ihren
Notizen (zweiseitig beschrieben) als Gedächtnisstütze verwenden.
Anmeldung:
Bitte melden Sie sich im KVV-System
zur Vorlesung und zu den Übungsgruppen an.
Melden Sie sich auch im Campus-Management-System an, damit Ihnen Ihre
Leistungen bescheinigt werden können.
Übungen:
Die Übungszettel werden ausschließlich online
erscheinen, und zwar hier auf dieser Seite. Die
Bearbeitungsdauer reicht gewöhnlich von
von Freitag
bis zum Freitag der nächsten Woche vor der Vorlesung (12:15 Uhr), also
7 Tage. Verspätet abgegebene Übungszettel zählen
als nicht bearbeitet.
Bearbeiten Sie die Übungen in Zweiergruppen, und
geben Sie sie schriftlich direkt vor der Vorlesung
ab. Programmieraufgaben müssen zusätzlich über die KVV-Seite
hochgeladen werden.
In der Regel enthält jeder Zettel drei Aufgaben, die mit Punkten
versehen sind. Davon werden jedoch nur zwei Aufgaben, die nach dem
Abgabetermin festgelegt werden, korrigiert und in die Bewertung
einbezogen.
Alle Übungszettel in einer Datei.
-
Übungszettel.
Bearbeitung bis Freitag, 29. 4. 2016,
ausgegeben am Dienstag, 19. 4.
-
Übungszettel.
Bearbeitung bis Freitag, 6. 5. 2016,
ausgegeben am Freitag, 29. 4.
-
Übungszettel mit Programmieraufgabe.
Bearbeitung bis Freitag, 13. 5. 2016,
ausgegeben am Freitag, 6. 5.
Grafik-Demonstrationsprogramm in Java.
-
Übungszettel.
Bearbeitung bis Freitag, 20. 5. 2016,
ausgegeben am Freitag, 13. 5.
-
Übungszettel mit Programmieraufgabe.
Bearbeitung bis Freitag, 27. 5. 2016,
ausgegeben am Freitag, 20. 5.
-
Freiwilliger Übungszettel mit
Programmieraufgabe,
mit Bonuspunkten.
Bearbeitung bis Freitag, 3. 6. 2016,
ausgegeben am Freitag, 27. 5.
-
Übungszettel mit Programmieraufgabe.
Bearbeitung bis Freitag, 17. 6. 2016,
ausgegeben am Freitag, 3. 6.
-
Übungszettel.
Bearbeitung bis Freitag, 24. 6. 2016,
Programmierprojekte bis Freitag, 8. 7. 2016,
ausgegeben am Freitag, 17. 6.
Zu Übung 39: Rahmenprogramm,
JOGL-Projektseite,
Informationen über JOGL,
OpenGL.
Über die offizielle JOGL-Seite kann
man nur den Quellcode finden, den man selbst kompilieren muss.
Es gibt auch
vorkompilierte
Versionen (auch in einer
älteren
Fassung), die jedoch nicht immer einfach zu installieren sind.
-
Übungszettel.
Bearbeitung bis Freitag, 1. 7. 2016,
ausgegeben am Freitag, 24. 6.
-
Übungszettel.
Bearbeitung bis Freitag, 15. 7. 2016,
ausgegeben am Freitag, 8. 7.
- Klausur vom Freitag, 29. 7. 2016.
- Klausur vom Freitag, 4. 10. 2016.
Inhaltsübersicht, Literatur:
Siehe KVV-Seite
der Vorlesung.
Vorlesungs- und Übungstermine:
Vorlesungen:
Mittwoch, 8.30 Uhr bis 10.00 Uhr
und
Freitag, 12.15 Uhr bis 13.45 Uhr
im Seminarraum 005, Takustraße 9.
Übungen: Es gibt zwei Übungstermine:
Mi 10–12 Uhr, Seminarraum 007/008, Arnimallee 6;
Mi 14–16 Uhr, Seminarraum 005, Arnimallee 3.
Die Übungen beginnen mit der Besprechung der nicht bewerteten
Vorübungen am 20. April, also in der ersten Woche.
Kriterien für die erfolgreiche aktive Teilnahme an den Übungen:
- Mindestens 60% der erreichbaren Gesamtpunkte der Übungszettel.
- Mindestens einmal eine Aufgabenlösung in den Übungen vorstellen.
Klausuren:
Es gibt eine 90-minütige Abschlussklausur nach dem Semesterende und einen Wiederholungstermin in der Woche vor
dem Vorlesungsbeginn im Wintersemester, und zwar
voraussichtlich am Freitag,
29. 7. 2016
von 12–14 Uhr im Hörsaal B (Henry-Ford-Bau),
und am
Freitag, 14. 10. 2016, von 16–18 Uhr im Hörsaal Informatik.
Für die Klausur ist eine
Anmeldung
im KVV-System
erforderlich, um die Plätze einzuteilen.
Die Anmeldung wird rechtzeitig freigeschaltet.
Als Hilfsmittel ist einzig
ein DIN-A4-Blatt (doppelseitig) mit Ihren eigenen handschriftlichen
Gedächtnisstützen erlaubt. Dieses ist mit abzugeben.
Die Note zur Vorlesung beruht nur auf dem Klausurergebnis.
Vorlesungstermine und -inhalte:
- Mittwoch, 20. April 2016, 8:30 Uhr
- Überblick, Computergrafik im Wechselspiel mit Bildverarbeitung,
Bilderkennung (Computersehen), und geometrischem Rechnen
- kartesische Koordinaten
- homogene Koordinaten
- geometrische Transformationen in der Ebene
- Freitag, 22. 4. 2016, 12:15 Uhr
- Drehungen im Raum
- die projektive Ebene
- Räumliches Modell und Kugelmodell der projektive Ebene
- Schnittpunkt und Verbindungsgerade in homogenen Koordinaten
- Dualität
- Mittwoch, 27. 4. 2016
- der projektive Raum
- projektive Transformationen in der Ebene und im Raum
- Projektion
- Perspektive
- Freitag, 29. 4. 2016. Die Vorlesungsfolien stehen auf
der KVV-Seite unter Materialien/Resources.
- Objektkoordinaten, Weltkoordinaten, Augenkoordinaten
- normalisierte Gerätekoordinaten, Rasterkoordinaten
- Transformationsmatrizen
- Mittwoch, 4. 5. 2016
- Perspektive: Hauptpunkt, Horizont, Fluchpunkte
- Transformation zwischen verschiedenen Koordinatensystemen,
Linksmultiplikation und Rechtsmultiplikation
- Helligkeit und Licht, Nichtlinearität der Wahrnehmung; Weber-Fechner'sches
Gesetz
- Mittwoch, 11. 5. 2016
- Helligkeit, Gamma-Korrektur
Helligkeits-Applet (Java) aus der
Vorlesung, Quellcode
dazu: Helligkeit.java
und Helligkeit2.java (Anleitung zum
lokalen Verwendung ohne Brauser: Die beiden Java-Programme übersetzen
und die
html-Datei herunterladen. Dann kann man
die Applets
Programm mit appletviewer Helligkeit.html
anschauen.)
- Spektralfarben, gemischtes Licht, Charakterisierung einer
Lichtquelle durch die Intensitätsfunktion in Abhängigkeit von der
Wellenlänge.
- Licht- und Farbwahrnehmung, Zapfen und Stäbchen
- S/M/L-Zapfen, Empfindlichkeit
- dreidimensionales Farbensehen
- Freitag, 13. 5. 2016
- Farbmischung: additiv, subtraktiv, optisch
- (Optische Täuschung: die Benham-Scheibe)
- metamere Farben
- Farbraum und Farbebene, die CIE-Farbebene (Grafiken aus
Wikipedia)
- Mittwoch, 18. 5. 2016
- Sehen unter wechselnden Lichtbedingungen, Sättigung, Adaptation,
Farbkonstanz
- optische Täuschungen,
Bewegung
- Erzeugung von Farbe und Licht auf Bildschirmen und beim Drucken
- Freitag, 20. 5. 2016
- Farbräume: RGB, HSV, HSL, CMYK
- Übersicht über den Weg vom Modell zum Bild in der Computergraphik (die rendering pipeline)
- Rastern von Geraden, der Algorithmus von Bresenham
- Mittwoch, 25. 5. 2016
- Rastern von Kreisen
- Schattierung
- Freitag, 27. 5. 2016
- Mittwoch, 1. 6. 2016
- Freitag, 3. 6. 2016
- Lineare Interpolation in Weltkoordinaten
- Ausfüllen von Flächen mit linearer Interpolation in
Weltkoordinaten
- Normalvektoren impliziter und parametrischer Flächen
- Verdeckte Flächen: Painter's Algorithmus
- Tiefenpuffer (z-Puffer)
- Mittwoch, 8. 6. 2016
- Reflexion, Lichtbrechung, Totalreflexion
- Strahlverfolgung (ray-tracing)
- Freitag, 10. 6. 2016
- Rekursive Strahlverfolgung
- Geometrische Modellierung von Flächen
- Implizite und parametrische Flächen, Dreiecksgitter
- Vergleich der verschiedenen Darstellungen: Schnitt mit einem
Strahl, Aufbringen einer Textur, Berechnen des Normalvektors
- Der Marching-Cubes-Algorithmus zum Zeichnen einer impliziten Fläche
- Dreiecksgitter im Computer als Datenstruktur für Flächen
- Dreiecksstreifen und Dreiecksfächer
- Doppelt-verkettete Kantenliste (doubly-connected edge list, DCEL)
- Mittwoch, 15. 6. 2016
- Transparenz, α-Kanal
- Textur
- Texturen auf Dreiecksflächen und auf parametrischen Flächen
- Bumpmapping
- Auflösung von Texturen, Aliasing
- Programmierbare Grafik-Pipeline, Shading Languages
- Freitag, 17. 6. 2016
- Schatten
- Modellbeschreibung als Dateiformat oder mittels eines API (z.B. OpenGL)
- Punkte als Zeilen- oder Spaltenvektoren
- Globale Beleuchtung
- Die Rendering-Gleichung
- Photometrische physikalische Größen:
- Lichtstrom P
- Beleuchtungsstärke E (illuminance)
- Lichtstärke I
- Leuchtdichte L (luminance)
- spezifische Lichtausstrahlung M (luminous emittance,
"radiosity")
- Raumwinkel
- Mittwoch, 22. 6. 2016
- Lambertscher Strahler für diffuse Reflexion
- Wechselseitige Beleuchtung mit diffusen Flächen, Radiosity-Methoden
- Sichtfaktoren (Formfaktoren)
- Flächenänderung bei Projektion
- Radiosity-Gleichungssystem
- kontrahierende Abbildung
- Freitag, 24. 6. 2016
- Iterative Lösung (Gauß-Seidel-Verfahren)
- Transformation von Normalvektoren bei affinen Abbildungen
- Übersicht: Spline-Kurven
- Kontrollpunkte und Kontrollpolygon
- Bernsteinpolynome Bdi(t)
- Bézierkurven, Definition und Eigenschaften
- Variationsminderung, konvexe-Hüllen-Eigenschaft, Invarianz
gegenüber affinen Transformationen, Tangentenrichtungen
- Parabeln als quadratische Bézierkurven
- Hermite-Splines
- Mittwoch, 29. 6. 2016
- Abschneiden (Clipping) von Strecken in einem Rechteck,
Algorithmus von Cohen-Sutherland
- Rotation im der Ebene mit Hilfe von komplexen Zahlen
- Rotation im Raum mit Hilfe von Quaternionen
- Freitag, 1. 7. 2016
- Mittwoch, 6. 7. 2016
- B-Spline-Kurven
- Basisfunktionen Bdk(x), Rekursion
- Eigenschaften: Glattheit, lokaler Einfluss
- Uniforme kubische B-Splines,
Animation
- Basisfunktionen B3k(x)
- Freitag, 8. 7. 2016
- Geschlossene B-Spline-Kurven
- Geometrische und parametrische Glattheit,
C0-Stetigkeit,
C1-Stetigkeit,
Ck-Stetigkeit,
G1-Stetigkeit
- Verschiedene Parametrisierungen der gleichen Kurve
- Mehrfache Kontrollpunkte
- Rationale B-Splines, NURBS, Knotengewichte
- interaktive Animationen zu
nichtuniformen
B-splines und zu
rationalen B-splines
- eine andere interaktive Animation zu nichtuniformen
B-Splines
(Achtung! Der "Grad" in diesem Java-Applet ist in Wirklichkeit die Anzahl der
Kontrollpunkte, die einen Splinepunkt beeinflussen, also um eins höher
als der Grad. Diese Zahl nennt man die Ordnung der Splinekurve. Für andere als kubische Splines ist die Anzahl der
Knotenpunkte nicht korrekt.)
- Mittwoch, 13. 7. 2016
- Catmull-Rom-Splines zur Interpolation:
- Extrapolation der Tangentenrichtung an den Randpunkten
- gleichmäßige Splines und Splines mit beliebigen Knotenwerten
- Zeichnen von Splinekurven
- Schnittpunkte von Splinekurven durch schrittweise Verfeinerung
- Spline-Flächen, Tensorprodukt
- Bézierflächen
- B-Spline-Flächen und NURBS-Flächen
- Freitag, 15. 7. 2016
- Interpolation auf Dreiecken: Baryzentrische Koordinaten
- Interpolation auf Polygonen: Wachspresskoordinaten
- räumliche Interpretation
- Mittwoch, 20. 7. 2016, geänderter Raum: Raum 006
- Interpolation auf Polygonen: Mittelwertkoordinaten nach Michael Floater
- Die Sibsonsche Flächenstehlformel
- Quad-Bäume
- Freitag, 22. 7. 2016
- Constructive Solid Geometry (CSG)
- (Regularisierte) Boolesche Operationen auf Körpern und Flächen
- Effekte mit mehreren Grafikpuffern: Antialiasing, Tiefenschärfe, Unschärfe bei Bewegung
- Freitag, 29. 7. 2016, 12-14 Uhr: Klausur, Hörsaal 2, Silberlaube
- Freitag, 14. 10. 2016, 16-18 Uhr: Klausur, Hörsaal Informatik
Günter Rote