Inhalt
Inhalt
1 Einführung
1.1 Motivation
1.2 Definition
1.3 Anwendungen
1.4 Kurze Geschichte der Computergrafik
1.5 Ausgabegeräte
1.6 Eingabegeräte
2 Grafische Oberflächen und ihre Programmierung
2.1 Der Window-Manager
2.2 Eventhandling
2.3 Eigene Applikationen
2.4 Das X-Window-System
2.5 Beispiele für Widget-Sets
2.6 Swing
2.7 Swing-Beispielapplikation
2.8 Java-Applet
3 2D-Grundlagen
3.1 Koordinatensysteme
3.2 Linie
3.3 Polygon
3.4 Kreis
4 2D-Füllen
4.1 Universelle Füll-Verfahren
4.2 Scan-Line-Verfahren für Polygone
4.3 Dithering
5 Clipping
5.1 Clipping von Linien
5.2 Clipping von Polygonen
5.3 Beispiel-Applet zu 2D-Operationen
6 2D-Transformationen
6.1 Translation
6.2 Skalierung
6.3 Rotation
6.4 Homogene Koordinaten
6.5 Allgemeine Transformationen
6.6 Raster-Transformationen
7 Kurven
7.1 Algebraischer Ansatz
7.2 Splines
7.3 Bézier-Kurven
7.4 B-Splines
7.5 NURBS
7.6 Beispiel-Applet zu Splines
7.7 Macromedia Flash
8 Fraktale
8.1 Selbstähnlichkeit
8.2 Koch'sche Schneeflocke
8.3 Fraktale Dimension
8.4 Lindenmayer-Systeme
8.5 Baumstrukturen
8.6 Mandelbrot-Menge
8.7 Julia-Menge
8.8 Beispiel-Applet zu Fraktalen
8.9 Iterierte Funktionensysteme
8.10 Beispiel-Applet zu Iterierten Funktionensystemen
9 Farbe
9.1 Physik
9.2 Dominante Wellenlänge
9.3 Grundfarben
9.4 RGB-Modell (Rot, Grün, Blau), (additiv)
9.5 CMY-Modell (Cyan, Magenta, Yellow), (subtraktiv)
9.6 Das YIQ-Modell
9.7 YUV-Modell
9.8 HSV-Modell
9.9 HLS-Modell
9.10 Color Data Base
9.11 CNS
9.12 Color Table (Farbtabelle)
9.13 Beispiel-Applet zu Farbe
10 Pixeldateiformate
10.1 TIF
10.2 PBM, PGM, PNM und PPM
10.3 Photo-CD
10.4 Auflösung
10.5 LZW-Komprimierung (Lempel/Ziv/Welch, 1984)
10.6 GIF
10.7 Erzeugung einer bildbezogenen Farbtabelle
10.8 Kompression nach JPEG
11 3D-Grundlagen
11.1 Repräsentation und Darstellung
11.2 3D-Koordinatensystem
Länge und Kreuzprodukt
11.4 Skalarprodukt
11.5 Matrixinversion
12 3D-Repräsentation
12.1 Elementarobjekte
12.2 Drahtmodell
12.3 Flächenmodell
12.4 CSG (constructive solid geometry)
12.5 Flächenmodell mit Halbkantendarstellung
13 3D-Transformationen
13.1 Translation
13.2 Skalierung
13.3 Rotation
13.4 Transformation von Koordinatensystemen
13.5 Transformation der Normalenvektoren
14 Projektion
14.1 Bildebene
14.2 Perspektivische Projektion
14.3 Parallelprojektion
15 Betrachtungstransformationen
15.1 Die synthetische Kamera
15.2 Viewing Pipeline
16 3D-Objekte
16.1 Polyeder
16.2 Gekrümmte Flächen
17 Entfernen verdeckter Kanten und Flächen
17.1 Back-Face Removal/Culling
17.2 Hidden-Surface Removal
17.3 Beispiel-Applet zur Wire-Frame-Projektion
18 Rasterung von Flächen
18.1 Beleuchtung
18.2 Schattierungsalgorithmen
18.3 Schatten
18.4 Texture Mapping
18.5 Beispiel-Applet zum Rendering
19 Die Viewing-Pipeline im Überblick
20 Radiosity
20.1 Globale Beleuchtung
20.2 Physikalische Ausgangslage
20.3 Die Radiosity-Gleichung (Beleuchtungsgleichung)
20.4 Berechnung der Formfaktoren
20.5 Interpolation der Pixelfarben
20.6 Schrittweise Verfeinerung
20.7 Screenshots
21 Ray Tracing
21.1 Grundlagen
21.2 Ermittlung sichtbarer Flächen durch Ray Tracing
21.3 Berechnung von Schnittpunkten
21.4 Effizienzsteigerung zur Ermittlung sichtbarer Flächen
21.5 Rekursives Ray Tracing
21.6 Public Domain Ray Tracer Povray
22 Caligary trueSpace
23 VRML
23.1 Geschichte
23.2 Einbettung
23.3 Geometrie
23.4 Polygone
23.5 Wiederverwendung
23.6 Multimedia
23.7 Interaktion
23.8 Animation
23.9 Scripts
23.10 Multiuser
24 OpenGL
24.1 Grundlagen
24.2 Syntax
24.3 Programmbeispiele
24.4 Screenshots