Graphics Reference
In-Depth Information
Abb. 9.13 Scanlineverfahren
h min bis h max . In der Scanline selbst sind alle Pixel zwischen v min und v max zu un-
tersuchen. Als störende Nebenbedingung ist lediglich zu beachten, dass keine Pixel
außerhalb der Facette angefasst werden, d. h., die Untersuchung beginnt erst beim
Erreichen einer Facettenkante und endet mit einer solchen.
Damit ist auch schon die erste Teilaufgabe angesprochen: Die beiden Dreiecks-
seiten in Abb. 9.13 seien so als Treppenzüge darzustellen, dass diese die von der
Scanline geschnittenen Geraden 1-2 und 1-3 möglichst genau repräsentieren. Die
Anzahl „Treppen“, die z. B. zwischen den Ecken 1 und 2 liegen, ergeben sich aus
der Koordinatendifferenz P 1y P 2y . Diese Anzahl ist auf die Strecke P 1h P 2h zu
verteilen. (Die Indizes x ; y ; z beziehen sich auf Gleitkomma-, h ; v ; t auf ganzzahlige
Koordinaten). Damit sind die Steigungen der Geraden 1-2 und 1-3
dv 12 D .
P 1y P 2v /=.
P 1h P 2h /
dv 13 D .
P 1y P 3v /=.
P 1h P 3h /
Die Abstände auf der h-Achse sind konstant und werden ganzzahlig verwendet. In
v-Richtung ergeben sich für die dv ik Kommawerte, die die Steigungen - die Anzahl
der Stufen - zur nächsten Scanline ausmitteln.
Wenn in Abb. 9.13 die Scanline den Bereich zwischen den beiden Ecken 1 und 2
bzw. h min und h max durchläuft, trifft man irgendwo dazwischen auf die dritte Ecke;
entweder oben oder unten auf der Scanline. Im Beispiel ändert sich an der Ecke 2
die Steigung und gültig wird dv 23 für den rechten Teil der Facette. Zwischen den
Ecken 1 und 3 dagegen ist die Steigung stetig.
Zweckmäßig teilt man deshalb eine Facette wie in Abb. 9.14 skizziert in drei
Bereiche auf:
linkes Teildreieck,
eine Scanline mit Ecke (oben oder unten),
rechtes Teildreieck.
Die Fälle mit einer senkrechten Seite rechts oder links, d. h., zwei Ecken überein-
ander, sind damit ebenfalls erfasst.
Search WWH ::




Custom Search