2D-Computergrafik
Die 2D-Computergrafik beschäftigt sich mit der Darstellung von Grafiken in der Ebene. Man kann sie in zwei weitere Bereiche aufteilen, die Vektor- und die Rastergrafik. Die Bezeichnung Vektorgrafik ist in zweierlei Hinsicht etwas missverständlich: Zum einen wird natürlich auch in der 3D-Computergrafik mit Vektoren gearbeitet, zum anderen muss jedes mit Vektoren beschriebene Bild in eine Rastergrafik umgewandelt werden, um auf einem rasterbasierten Bildschirm oder Drucker dargestellt zu werden.Im Bereich der Rastergrafiken gibt es oftmals Überschneidungen mit der Bildverarbeitung vor allem, wenn es um die Umwandlung von Bildern, beispielsweise Farb- in Grau- oder Schwarzweißbilder oder um deren Verbesserung, z.B. mit Filtern geht.
Table of contents |
2 Algorithmen der 2D-Computergrafik |
Um ein Bild zu beschreiben gibt es zwei Möglichkeiten:
Die eine ist die eines in der Regel rechteckigen Rasters. Die kleinste Einheit dieses Rasters ist das Pixel. Mathematisch betrachtet ist das Bild eine m x n-Matrix, wobei m und n Breite und Höhe des Bildes sind und jedes Element der Matrix einen Grauwert oder Farbvektor in einem Farbmodell darstellt. Die Höhe und Breite der Matrix ist die so genannte Auflösung, wie man sie auch von Monitoren und Digitalkameras kennt. Übliche Auflösungen sind hier 1024 x 768 oder 800 x 600 Pixel. Das Raster wir auch oft als bitmap bezeichnet.
Die andere ist die mathematische Beschreibung eines Bildes. Beispielsweise indem man angibt, dass ein achsenparalleles Quadrat mit den Eckpunkten (0/0) und (5/5) dargestellt werden soll, das einen Kreis mit Radius 1, Mittelpunkt (2,5/2,5) und Linienstärke 0,1 enthält. Da diese Angaben im Wesentlichen der linearen Algebra also der Vektorrechnung entstammen, wird eine solche Beschreibung Vektorgrafik genannt. Vektorgrafiken können auf einem vektororientierten Ausgabegerät (z.B. einem Plotter) direkt dargestellt werden, um sie auf einem Rasterzeilen-Monitor (oder einem anderen Punktmatrix-Ausgabegerät) darzustellen, müssen sie erst gerastert werden, also in eine oben beschriebene Punktmatrix übertragen werden. Der Vorteil der vektoriellen Beschreibung von Bildinformationen liegt darin, dass sie bei jeder Auflösung dargestellt werden können und auch in das Bild hinein- und hinausgezoomt werden kann. Man kann sich also beispielsweise den oben beschriebenen Kreis am linken Außenpunkt von (1,2/2,2) bis (1,7/2,7) mit einer Auflösung von 800 x 800 ansehen. Das Übertragen von der mathematischen Beschreibung in das Raster nennt man Rasterisieren, Verrastern oder auch Rendern. Zahlreiche Algorithmen der Computergrafik beschäftigen sich mit dieser Übertragung von der vektoriellen Beschreibung in das Raster.
Zentrale Gebiete der 2D-Computergrafik sind das Zeichnen von mathematisch definierten Objekten auf Raster, das Zurechtschneiden von Figuren an gegebenen Grenzen (Clipping) und die so genannten Halbtonverfahren, mit denen z.B. auch im Zeitungsdruck gearbeitet wird.
Bresenham-Algorithmus für Linien
Bresenham-Algorithmus für Kreise
Bézierkurven nach de Casteljau
Cohen-Sutherland-Algorithmus
Liam-Barsky-AlgorithmusRaster- und Vektorgrafiken
Algorithmen der 2D-Computergrafik
Rasterisierung
Clipping