<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Rasterung</id>
	<title>Rasterung - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Rasterung"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Rasterung&amp;action=history"/>
	<updated>2026-05-30T05:24:54Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Rasterung&amp;diff=546960&amp;oldid=prev</id>
		<title>imported&gt;Maximum 2520: /* Berechnungen */ Erklärung verbessert, Reihenfolge der Bilder 2 und 3 geändert, Bezug zu Bild 3 hergestellt</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Rasterung&amp;diff=546960&amp;oldid=prev"/>
		<updated>2026-03-09T19:16:29Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Berechnungen: &lt;/span&gt; Erklärung verbessert, Reihenfolge der Bilder 2 und 3 geändert, Bezug zu Bild 3 hergestellt&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Begriffsklärungshinweis|Für den Begriff in der Drucktechnik siehe [[Druckraster]].}}&lt;br /&gt;
&lt;br /&gt;
[[Datei:Scan-conversion.svg|mini|hochkant=2.1|Bei der Rasterung einer [[Vektorgrafik]], in diesem Beispiel im [[Scalable Vector Graphics|SVG]]-Format, müssen die Pixel-Farbwerte der resultierenden [[Rastergrafik]] ermittelt werden.]]&lt;br /&gt;
&lt;br /&gt;
In der 2D-[[Computergrafik]] bezeichnet &amp;#039;&amp;#039;&amp;#039;Rasterung&amp;#039;&amp;#039;&amp;#039; (von „Raster“: auf der Fläche verteilte regelmäßige Muster&amp;lt;ref&amp;gt;[[Hans Friedrich Ebel|Hans F. Ebel]], [[Claus Bliefert]]: &amp;#039;&amp;#039;Vortragen in Naturwissenschaft, Technik und Medizin.&amp;#039;&amp;#039; 1991; 2., bearbeitete Auflage 1994, VCH, Weinheim ISBN 3-527-30047-3, S. 302.&amp;lt;/ref&amp;gt;), auch &amp;#039;&amp;#039;Rendern&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;Scankonvertierung&amp;#039;&amp;#039; genannt, die Umwandlung einer [[Vektorgrafik|Vektor]]- in eine [[Rastergrafik]].&lt;br /&gt;
&lt;br /&gt;
== Verfahren ==&lt;br /&gt;
[[Datei:textrenderp2.png|mini|Die Ergebnisse von zwei [[Portable Document Format|PDF]]-Renderern, die [[Vektorschrift]] in [[Pixelgrafik]] umsetzen.&amp;lt;br&amp;gt;Oben: [[Sumatra PDF]],&amp;lt;br&amp;gt;unten: [[Adobe Reader]].]]&lt;br /&gt;
&lt;br /&gt;
Es gibt eine Vielzahl von [[Algorithmus|Algorithmen]] zur Rasterung von [[Grafisches Primitiv|grafischen Primitiven]], wie Linien, [[Polygon]]en, [[Kreis]]en und anderen [[Geometrisch|geometrischen]] Formen, siehe dazu:&lt;br /&gt;
* [[Rasterung von Linien]]&lt;br /&gt;
* [[Rasterung von Polygonen]]&lt;br /&gt;
* [[Rasterung von Kreisen]]&lt;br /&gt;
&lt;br /&gt;
Ein bekanntes Problem der Rasterung ist der [[Treppeneffekt]]. Steht für die zu erzeugende [[Rastergrafik]] eine [[Farbtiefe (Computergrafik)|Farbtiefe]] von mehr als 1 [[Bit]] pro [[Pixel]] zur Verfügung, so kann dieser Effekt mittels Kantenglättung ([[Antialiasing (Computergrafik)|Antialiasing]]) vermindert werden. Dazu gibt es mehrere Methoden, die teils ungewichtet arbeiten, teils einen speziellen [[Rekonstruktionsfilter]] verwenden. Bei der Rasterung von [[Text]] treten spezielle Probleme auf, die mittels [[Hint]]ing vermieden werden können.&lt;br /&gt;
&lt;br /&gt;
== Rasterung dicker Primitiven ==&lt;br /&gt;
Bei der Rasterung von [[Grafisches Primitiv|grafischen Primitiven]] mit einer bestimmten Dicke gibt es, sofern sie nicht bereits vom verwendeten [[Antialiasing (Computergrafik)|Antialiasing]]-[[Algorithmus]] unterstützt wird, mehrere Möglichkeiten. Bei [[Polygon]]en müssen hierbei auch die Verbindungsstellen zwischen den einzelnen Liniensegmenten beachtet werden, siehe hierzu [[Rasterung von Polygonen]].&lt;br /&gt;
&lt;br /&gt;
; Pixelwiederholung:Eine Methode ist, bei der Rasterung anstatt eines mehrere [[Pixel]] vertikal bzw. horizontal zu zeichnen. Ein Problem ist, dass Kurvenenden bei dicken Kurven „abgeschnitten“ wirken. Daneben kann es an den Stellen, an denen von horizontaler zu vertikaler Wiederholung oder umgekehrt gewechselt wird, zu merklichen Lücken kommen. Außerdem weisen derartig gerasterte [[Kurve (Mathematik)|Kurven]], ähnlich wie dünne Linien, eine unterschiedliche Dicke in Abhängigkeit von der lokalen [[Steigung]] auf.&lt;br /&gt;
; Pinsel:Hierbei wird eine bestimmte [[Rastergrafik]] als „Pinsel“, im einfachsten Fall ein [[Quadrat]] mit gewünschter Kantenlänge, entlang der [[Kurve (Mathematik)|Kurve]] bewegt. Auch hier variiert die Dicke in Abhängigkeit von der Steigung, im Gegensatz zur Pixelwiederholung ist die Linie jedoch bei Diagonalschritten am dicksten. Dieses Problem lässt sich dadurch umgehen, dass das Quadrat gemäß der lokalen [[Steigung]] der Kurve gedreht wird, einfacher ist es jedoch, einen Kreis als Pinsel zu verwenden. Ein Nachteil der Methode ist, dass man bei der Rasterung auf sehr viele bereits in den vorhergehenden Schritten eingefärbte [[Pixel]] stößt. Dieser Effekt ist umso größer, je dicker die Kurve ist. Um das Problem der variierenden Kurvendicke zu lösen, können polygonförmige Pinsel verwendet werden.&amp;lt;ref&amp;gt;John D. Hobby: &amp;#039;&amp;#039;Digitized Brush Trajectories.&amp;#039;&amp;#039; Dissertation, Stanford University, 1985 ({{Webarchiv |url=http://cm.bell-labs.com/who/hobby/thesis.pdf |text=PDF, 30 MB |wayback=20061026074816}})&amp;lt;/ref&amp;gt;&lt;br /&gt;
; Füllen zwischen Rändern:Eine andere Methode zur Rasterung einer dicken [[Kurve (Mathematik)|Kurve]] besteht darin, ihre beiden Ränder in einigem [[Abstand]] voneinander zu zeichnen und den dazwischen liegenden Bereich auszufüllen. Ein Nachteil ist, dass bei der zweifarbigen Rasterung die Kurve wegen Rundungsfehlern möglicherweise etwas verschoben erscheint. Bei [[Ellipse]]n muss beachtet werden, dass die Rasterung durch das Zeichnen zweier konfokaler Ellipsen mit unterschiedlich langen [[Halbachsen der Ellipse|Halbachsen]] geometrisch nicht korrekt ist.&lt;br /&gt;
; Liniensegmente:Schließlich gibt es die Möglichkeit, dicke [[Kurve (Mathematik)|Kurven]] durch eine Aneinanderreihung kurzer Liniensegmente zu zeichnen. Dabei müssen die gleichen Besonderheiten wie bei der Rasterung von [[Polygon]]en beachtet werden, damit die Liniensegmente korrekt miteinander verbunden werden.&lt;br /&gt;
&lt;br /&gt;
== Löschung von Primitiven ==&lt;br /&gt;
Bereits gezeichnete Figuren können selektiv gelöscht werden, indem sie nochmals mit der Hintergrundfarbe gezeichnet werden. Das funktioniert jedoch nicht, wenn sie andere Figuren überschneiden, da hierbei auch unerwünschte Bildteile gelöscht werden können. Eine effiziente Möglichkeit, dies zu vermeiden, sind &amp;#039;&amp;#039;Minimax-&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;Boxing-Tests.&amp;#039;&amp;#039; Hierbei wird zunächst geprüft, ob sich in dem von der zu löschenden Figur aufgespannten Rechteck andere Figuren befinden. Nur wenn dies der Fall ist, muss auf Schnittpunkte getestet und gegebenenfalls der gesamte Bereich neu gezeichnet werden.&lt;br /&gt;
&lt;br /&gt;
== 3D-Rasterung ==&lt;br /&gt;
[[Raytracing]] und Rasterung sind zwei grundlegend unterschiedliche Ansätze zum [[Rendern (Bildsynthese)|Rendern]] von Bildern von [[3D]]-Szenen, obwohl sie für Primärstrahlen dieselben Ergebnisse berechnen. Durch die Rasterung wird jedes [[Dreieck]] auf die [[Bildebene (darstellende Geometrie)|Bildebene]] projiziert und alle abgedeckten Pixel in [[2D]] aufgelistet. Die Strahlverfolgung wird dabei in 3D ausgeführt, indem [[Strahl (Geometrie)|Strahlen]] durch jedes [[Pixel]] erzeugt und dann der nächstgelegene [[Schnittpunkt]] mit einem Dreieck gefunden wird.&lt;br /&gt;
&lt;br /&gt;
Man kann die Anwendung einer Modell- oder Ansichtstransformation vermeiden, indem man stattdessen den Sampler-Generator transformiert. Während beim [[Raytracing]] normalerweise [[Gleitkommazahl]]en mit ihren numerischen Problemen verwendet werden, kann [[3D]]-Rasterung mit denselben Konsistenzregeln wie die [[2D]]-Rasterung implementiert werden. Bei der 3D-Rasterung bestehen die einzigen verbleibenden Unterschiede zwischen den beiden Ansätzen in der Szenenüberquerung und der Aufzählung potenziell abgedeckter Samples auf der [[Bildebene (darstellende Geometrie)|Bildebene]] (siehe [[Binning]]).&amp;lt;ref name=&amp;quot;:0&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Berechnungen ===&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right;&amp;quot;&amp;gt;[[Datei:01 3D-Rasterung-c.svg|mini|hochkant=1.3|Bild 2: Das [[Pixel]] &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt; muss in bestimmten durch die [[Dreieck|Dreiecke]] &amp;lt;math&amp;gt;(\vec e, \vec{p_1}, \vec{p_0})&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;(\vec e, \vec{p_2}, \vec{p_1})&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;(\vec e, \vec{p_0}, \vec{p_2})&amp;lt;/math&amp;gt; definierten [[Halbraum|Halbräumen]] liegen.]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right;&amp;quot;&amp;gt;[[Datei:01 3D-Rasterung-a.svg|mini|hochkant=1.3|Bild 1: Projektionszentrum &amp;lt;math&amp;gt;\vec e&amp;lt;/math&amp;gt; als [[Koordinatenursprung]] des [[Dreidimensional|dreidimensionalen]] [[Kartesisches Koordinatensystem|kartesischen Koordinatensystems]] mit dem Pixel &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt;, das in der [[Bildebene (darstellende Geometrie)|Bildebene]] liegt, und dem [[Dreieck]] &amp;lt;math&amp;gt;(\vec{p_0}, \vec{p_1}, \vec{p_2})&amp;lt;/math&amp;gt;.]]&amp;lt;/div&amp;gt;&lt;br /&gt;
[[Datei:01 3D-Rasterung-b.svg|mini|hochkant=1.3|Bild 3: Der [[Normalenvektor]] &amp;lt;math&amp;gt;\vec {n_2}&amp;lt;/math&amp;gt; ist [[Orthogonalität|orthogonal]] zum [[Dreieck]] &amp;lt;math&amp;gt;(\vec e, \vec{p_1}, \vec{p_0})&amp;lt;/math&amp;gt;.]]&lt;br /&gt;
[[Datei:01 3D-Rasterung-d.svg|mini|hochkant=1.3|Bild 4: Lage des [[Schnittpunkt|Schnittpunkts]] &amp;lt;math&amp;gt;\vec e + t \cdot \vec d&amp;lt;/math&amp;gt; im [[Dreieck]] &amp;lt;math&amp;gt;(\vec{p_0}, \vec{p_1}, \vec{p_2})&amp;lt;/math&amp;gt;.]]&lt;br /&gt;
Um herauszufinden, ob ein [[Pixel]] der [[Bildebene (darstellende Geometrie)|Bildebene]] von einem [[Dreieck]] bedeckt wird, reicht es, zu prüfen, ob der Projektionsstrahl (siehe [[Zentralprojektion]]), der durch das Pixel verläuft, das Dreieck schneidet.&lt;br /&gt;
&lt;br /&gt;
Nimmt man an, dass das Projektionszentrum &amp;lt;math&amp;gt;\vec e&amp;lt;/math&amp;gt; der [[Koordinatenursprung]] des [[Dreidimensional|dreidimensionalen]] [[Kartesisches Koordinatensystem|kartesischen Koordinatensystems]] ist, und bezeichnet die [[Ecke]]n des projizierten Dreiecks mit &amp;lt;math&amp;gt;\vec{p_0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\vec{p_1}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\vec{p_2}&amp;lt;/math&amp;gt; (Bild 1), dann ergibt sich folgende Bedingungen dafür, dass das Pixel &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt; im projizierten Dreieck liegt (Bild 2):&lt;br /&gt;
&lt;br /&gt;
* Die Ebene, die durch das Dreieck &amp;lt;math&amp;gt;(\vec e, \vec{p_1}, \vec{p_0})&amp;lt;/math&amp;gt; verläuft, teilt den [[Dreidimensional|dreidimensionalen]] [[Raum (Mathematik)|Raum]] in zwei [[Halbraum|Halbräume]]. Das Pixel der Bildebene muss in dem Halbraum liegen, in dem sich der [[Punkt (Geometrie)|Punkt]] &amp;lt;math&amp;gt;\vec{p_2}&amp;lt;/math&amp;gt; befindet. Außerdem muss das [[Pixel]]&lt;br /&gt;
* in dem durch das Dreieck &amp;lt;math&amp;gt;(\vec e, \vec{p_2}, \vec{p_1})&amp;lt;/math&amp;gt; definierten Halbraum liegen, in dem sich der Punkt &amp;lt;math&amp;gt;\vec{p_0}&amp;lt;/math&amp;gt; befindet und&lt;br /&gt;
* in dem durch das Dreieck &amp;lt;math&amp;gt;(\vec e, \vec{p_0}, \vec{p_2})&amp;lt;/math&amp;gt; definierten Halbraum liegen, in dem sich der Punkt &amp;lt;math&amp;gt;\vec{p_1}&amp;lt;/math&amp;gt; befindet.&lt;br /&gt;
Um zu prüfen, ob sich ein Punkt &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt; in einem durch die Punkte &amp;lt;math&amp;gt;\vec e&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\vec{p_1}&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;\vec{p_0}&amp;lt;/math&amp;gt; definierten Halbraum befindet, kann man folgende [[Funktion (Mathematik)|Funktion]] verwenden (Bild 3):&lt;br /&gt;
:&amp;lt;math&amp;gt;V(\vec d) := \vec{n_2} \cdot \vec d = ((\vec{p_1} - \vec e) \times (\vec{p_0} - \vec{p_1})) \cdot \vec d&amp;lt;/math&amp;gt;&lt;br /&gt;
wobei &amp;lt;math&amp;gt;\vec{n_2} \cdot \vec d&amp;lt;/math&amp;gt; das [[Skalarprodukt]] der [[Vektor]]en &amp;lt;math&amp;gt;\vec{n_2}&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt; ist. Der [[Normalenvektor]] &amp;lt;math&amp;gt;\vec{n_2}&amp;lt;/math&amp;gt; ist durch das [[Kreuzprodukt]]&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec{n_2} := (\vec{p_1} - \vec e) \times (\vec{p_0} - \vec{p_1})&amp;lt;/math&amp;gt;&lt;br /&gt;
definiert und ist [[Orthogonalität|orthogonal]] zum [[Dreieck]] &amp;lt;math&amp;gt;(\vec e, \vec{p_1}, \vec{p_0})&amp;lt;/math&amp;gt;. Diese Funktion berechnet das 6-fache vom [[Volumen]] des [[Tetraeder|Tetraders]] mit den [[Ecke]]n &amp;lt;math&amp;gt;\vec e&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\vec{p_1}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\vec{p_0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt;. Wenn der Punkt &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt; oberhalb des Dreiecks &amp;lt;math&amp;gt;(\vec e, \vec{p_1}, \vec{p_0})&amp;lt;/math&amp;gt; liegt, ist das [[Vorzeichen (Zahl)|Vorzeichen]] positiv, wenn &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt; unterhalb liegt, ist das Vorzeichen negativ. Wenn &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt; in der Ebene des Dreiecks &amp;lt;math&amp;gt;(\vec e, \vec{p_1}, \vec{p_0})&amp;lt;/math&amp;gt; liegt, ist das Volumen gleich 0. Der Skalierungsfaktor für das Volumen kann hier weggelassen werden, weil bei diesen Betrachtungen nur das Vorzeichen der Funktion wichtig ist.&lt;br /&gt;
&lt;br /&gt;
Entsprechendes gilt für die Dreiecke &amp;lt;math&amp;gt;(\vec e, \vec{p_2}, \vec{p_1})&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;(\vec e, \vec{p_0}, \vec{p_2})&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Mit den [[Funktion (Mathematik)|Funktionen]]&lt;br /&gt;
:&amp;lt;math&amp;gt;V_0(\vec d) := (\vec{p_2} - \vec e) \times (\vec{p_1} - \vec{p_2})&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;V_1(\vec d) := (\vec{p_0} - \vec e) \times (\vec{p_2} - \vec{p_0})&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;V_2(\vec d) := (\vec{p_1} - \vec e) \times (\vec{p_0} - \vec{p_1})&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
kann folgende Aussage formuliert werden:&lt;br /&gt;
&lt;br /&gt;
* Das Pixel &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt; liegt genau dann im projizierten Dreieck, wenn &amp;lt;math&amp;gt;V_0(\vec d) &amp;gt; 0&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;V_1(\vec d) &amp;gt; 0&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;V_2(\vec d) &amp;gt; 0&amp;lt;/math&amp;gt; ist.&lt;br /&gt;
&lt;br /&gt;
Der [[Schnittpunkt]] &amp;lt;math&amp;gt;\vec e + t \cdot \vec d&amp;lt;/math&amp;gt; des Pixels &amp;lt;math&amp;gt;\vec d&amp;lt;/math&amp;gt; mit dem ursprünglichen Dreieck &amp;lt;math&amp;gt;(\vec{p_0}, \vec{p_1}, \vec{p_2})&amp;lt;/math&amp;gt; kann auch mit [[Baryzentrische Koordinaten|baryzentrischen Koordinaten]] der Punkte &amp;lt;math&amp;gt;\vec{p_0}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\vec{p_1}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\vec{p_2}&amp;lt;/math&amp;gt; ausgedrückt werden (Bild 4). Dann gilt:&lt;br /&gt;
:&amp;lt;math&amp;gt;\vec e + t \cdot \vec d = t \cdot \vec d = \lambda_0 \cdot \vec{p_0} + \lambda_1 \cdot \vec{p_1} + \lambda_2 \cdot \vec{p_2} &amp;lt;/math&amp;gt; mit &amp;lt;math&amp;gt;\lambda_i = \frac{V_i(\vec d)}{V_0(\vec d) + V_1(\vec d) + V_2(\vec d)} &amp;lt;/math&amp;gt;&lt;br /&gt;
wobei &amp;lt;math&amp;gt;t&amp;lt;/math&amp;gt; und die &amp;lt;math&amp;gt;\lambda_i&amp;lt;/math&amp;gt; [[Reelle Zahl|reelle Zahlen]] sind. Die baryzentrischen Koordinaten werden mit &amp;lt;math&amp;gt;\vec e + t \cdot \vec d = (\lambda_0 : \lambda_1 : \lambda_2)&amp;lt;/math&amp;gt; bezeichnet.&amp;lt;ref name=&amp;quot;:0&amp;quot;&amp;gt;[https://cg.ivd.kit.edu/publications/p2012/3dr/gi2012.pdf 3D Rasterization: A Bridge between Rasterization and Ray Casting]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Algorithmen ===&lt;br /&gt;
Sobald ein [[Dreieck]] zum [[Rendern (Bildsynthese)|Rendern]] ausgewählt wurde, müssen die [[Strahl (Geometrie)|Strahlen]], die es abdeckt, effizient identifiziert werden. Bei der herkömmlichen Strahlverfolgung werden nur Dreiecke, die wahrscheinlich geschnitten werden, durch die Durchquerung aufgelistet. Bei größeren Bildausschnitten kann ein Dreieck jedoch nur einen kleinen Teil der [[Pixel]] bedecken, und es kann vorteilhaft sein, [[Binning]] zu verwenden, um das Auffinden der bedeckten Pixel zu beschleunigen. Aus dem gleichen Grund wurde bei der Rasterung immer das Binning verwendet, um die abgedeckten Pixel schnell auf dem [[Bildschirm]] zu lokalisieren.&lt;br /&gt;
&lt;br /&gt;
Eine generische Formulierung von kombiniertem Durchlaufen und [[Binning]] zeigt folgende [[Rekursive Programmierung|rekursive]] [[Funktion (Programmierung)|Funktion]], die in [[Pseudocode]] dargestellt ist:&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;funktion durchlaufen&amp;#039;&amp;#039;&amp;#039;(bildausschnitt F, knoten N)&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;falls&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;istVerdeckt&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;oder&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;istAuszerhalb&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;dann&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;stop&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;falls&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;bildausschnittTeilen&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;dann&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
         teile F in teilausschnitte F[i]&lt;br /&gt;
         &amp;#039;&amp;#039;&amp;#039;für jeden&amp;#039;&amp;#039;&amp;#039; teilausschnitt F[i]&lt;br /&gt;
             &amp;#039;&amp;#039;&amp;#039;durchlaufen&amp;#039;&amp;#039;&amp;#039;(F[i], N)&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;ende&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;sonst&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;falls&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;pixelErzeugen&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;dann&amp;#039;&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;rastern&amp;#039;&amp;#039;&amp;#039;(N, &amp;#039;&amp;#039;binning&amp;#039;&amp;#039;)&lt;br /&gt;
         &amp;#039;&amp;#039;&amp;#039;sonst&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
             &amp;#039;&amp;#039;&amp;#039;für jeden&amp;#039;&amp;#039;&amp;#039; nachfolger_von_N&lt;br /&gt;
                 &amp;#039;&amp;#039;&amp;#039;durchlaufen&amp;#039;&amp;#039;&amp;#039;(F, nachfolger_von_N)&lt;br /&gt;
     &amp;#039;&amp;#039;&amp;#039;ende&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ende&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
                 &amp;#039;&amp;#039;&amp;#039;durchlaufen&amp;#039;&amp;#039;&amp;#039;(F, nachfolger_von_N)&lt;br /&gt;
Hier ist F ein Bildausschnitt und N ist ein [[Knoten (Graphentheorie)|Knoten]] der räumlichen [[Indexstruktur]], der typischerweise mit dem gesamten Ansichtsfenster bzw. dem Wurzelknoten beginnt. Die kursiven Wörter &amp;#039;&amp;#039;istVerdeckt, istAuszerhalb,&amp;#039;&amp;#039; &amp;#039;&amp;#039;bildausschnittTeilen&amp;#039;&amp;#039;, &amp;#039;&amp;#039;pixelErzeugen, istAuszerhalb&amp;#039;&amp;#039; und &amp;#039;&amp;#039;binning&amp;#039;&amp;#039; bezeichnen Testfunktionen, die das Verhalten des [[Algorithmus]] steuern und es uns ermöglichen, die oben genannten Rendering-Algorithmen zu produzieren und neue Wege zu erkunden.&amp;lt;ref name=&amp;quot;:0&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Kachelgrafik]]&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* James D. Foley u. a.: &amp;#039;&amp;#039;Computer Graphics: Principles and Practice.&amp;#039;&amp;#039; Addison-Wesley, Reading 1995, ISBN 0-201-84840-6&lt;br /&gt;
* David F. Rogers: &amp;#039;&amp;#039;Procedural Elements for Computer Graphics.&amp;#039;&amp;#039; WCB/McGraw-Hill, Boston 1998, ISBN 0-07-053548-5&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
{{Commonscat|Rasterization|Rasterung}}&lt;br /&gt;
* {{Internetquelle|url=http://computergrafik.informatiker-wissen.de/rastern-antialiasing.html|titel=Grundlagen der Computergrafik – Rasterisierung|archiv-url=https://web.archive.org/web/20160806220358/http://computergrafik.informatiker-wissen.de/rastern-antialiasing.html|archiv-datum=2016-08-06|zugriff=2017-11-09}}&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Computergrafik]]&lt;br /&gt;
[[Kategorie:Fonttechnologie]]&lt;br /&gt;
[[Kategorie:Druckraster]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Maximum 2520</name></author>
	</entry>
</feed>