Rastern von Polygonen
aus Wikipedia, der freien Enzyklopädie
Das Rastern von Polygonen und aneinandergereihten Liniensegmenten ist eine Aufgabe der Computergrafik. Dem Rastern von gefüllten Polygonen, insbesondere von Dreiecken, kommt in der 3D-Computergrafik eine große Rolle zu, da Scanline Rendering darauf basiert.
[Bearbeiten] Liniensegmente und Mitering
Das Rastern von aneinandergereihten Liniensegmenten basiert auf dem Rastern von Linien. Sehr spitzwinklige Polygonecken können allerdings dazu führen, dass Pixel jeweils von mehreren Segmenten eingefärbt werden. Dies erzeugt bei bestimmten Rasteroperationen wie XOR unerwünschte Resultate.
Beim Rastern dicker Liniensegmente muss entschieden werden, wie sie miteinander verbunden werden. Dicke Linien als Rechtecke zu betrachten, liefert unschöne Ergebnisse. Besser ist es, Linien mit runden Enden zu zeichnen. Eine andere Möglichkeit ist Mitering („Gehrung“), bei der die Linienenden schräg gezeichnet werden, sodass sie aneinander angrenzen. Bei sehr spitzen Winkeln ragen die Linienenden zu sehr über die eigentliche Polygonecke heraus, weshalb sie besser abgeschnitten werden.
[Bearbeiten] Füllung
Polygone werden üblicherweise Zeile für Zeile gefüllt. Hierzu werden für jede Zeile die Schnittpunkte mit dem Polygon berechnet und dazwischen liegende Pixel eingefärbt. Dabei muss für einige Spezialfälle Rechnung getragen werden, etwa horizontale Segmente oder Segmente, die sich mehrere Polygone teilen. Auch treten bei der zweifarbigen Rasterung Alias-Effekte auf. Ein Beispiel sind Slivers, Polygonteile, die so dünn sind, dass sie keine Pixel einschließen und bei denen nur einzelne oder gar keine Pixel gezeichnet werden.
Ein effizienter Füllalgorithmus für Polygone ist der Scanline-Algorithmus.
[Bearbeiten] Literatur
- James D. Foley u. a.: Computer Graphics: Principles and Practice in C. Addison-Wesley, Reading (Massachusetts) 1995, ISBN 978-0-201-84840-3.