mit
= | Winkel zwischen Normale auf Fläche i und Verbindungslinie zwischen Fläche i und Fläche j | |
= | Winkel zwischen Normale auf Fläche j und Verbindungslinie zwischen Fläche i und Fläche j | |
rij | = | Entfernung zwischen Fläche dFi und Fläche dFj |
bij | = | Blockierungsfunktion, falls Teile von Fläche j aus der Sicht von Fläche i verdeckt sind. |
Fi | = | Flächeninhalt von Fläche i |
Die geometrische Interpretation beschreibt den Formfaktor als das Verhältnis der Basisfläche einer Halbkugel zur Orthogonalprojektion der auf die Halbkugel projizierten Fläche: Erst projiziert man die von Fi aus sichtbaren Teile von Fj auf eine Halbkugel mit Radius Eins um dFi , projiziert diese Projektion orthogonal auf die kreisförmige Grundfläche der Halbkugel und dividiert schließlich durch die Kreisfläche. Die Projektion auf die halbe Einheitskugel entspricht in der Gleichung dem Term cos /r 2ij , die Projektion auf die Grundfläche entspricht der Multiplikation mit cos , und die Division durch den Flächeninhalt des Einheitskreises liefert den Wert im Nenner.
Zur numerischen Berechnung wird die Halbkugel
durch einen
Halbwürfel
(hemi-cube) mit dem Zentrum
im Ursprung und dem Normalvektor in der z -Achse
ersetzt.
Die Oberseite des Würfels ist dabei parallel zur Fläche.
Jede Seite des Halbwürfels wird in ein Raster gleich
großer quadratischer Zellen aufgeteilt.
(Die Auflösungen reichen von
50 × 50 bis zu mehreren Hundert
pro Seite.)
Dann wird jedes Flächenelement auf die
Seiten des Halbwürfels projiziert.
Dazu benutzt man einen Algorithmus, der für jede Zeile die Kennung
des nächsten schneidenden Elements speichert.
Diese Elementpuffer kann man mit einem z -Puffer-Algorithmus für
jede Seite des Halbwürfels berechnen, bei dem man für jede Zelle
statt der Schattierung die Kennung der nächstliegenden Fläche speichert.
Jeder Zelle des Halbwürfels ist ein Delta-Formfaktor zugeordnet,
der von der Position der Zelle abhängt und vorher berechnet wird.
Für eine beliebig feine Rasterung der Quaderoberfläche
ergibt sich der Formfaktor Fij als Summe
aller von der Fläche Fj überdeckten Rasterzellen.
Wird eine Rasterzelle von mehreren Flächen
überdeckt, wird sie der Fläche mit der geringsten
Entfernung zugerechnet.
Für die Summe aller
Formfaktoren einer Fläche Fi gilt