Silhouette: Unterschied zwischen den Versionen
Aus DGL Wiki
Timon (Diskussion | Beiträge) K (→Wie berechne ich Sie?) |
BenBE (Diskussion | Beiträge) K () |
||
Zeile 1: | Zeile 1: | ||
+ | {{Unvollständig}} | ||
= Silhouette = | = Silhouette = | ||
Version vom 8. Oktober 2005, 14:24 Uhr
(Mehr Informationen/weitere Artikel) {{{1}}} |
Inhaltsverzeichnis
Silhouette
Was ist das?
Die Silhouette ist der Linienzug/die Kante welche die sichtbaren Flächen von den Nichtsichtbaren trennt.
Wie berechne ich Sie?
Ganz einfach. Mit Mathematik!
Wenn man die Silhouette berechnen will, benötigt man folgende Dinge:
- 2 benachbarte Flächen vom Objekt, bei denen man untersuchen will ob ihre Zwischenkante zur Silhouette gehört.
- Die Position des Betrachters.
- Die Position auf die der Betrachter sieht. (Intelligenterweise das Zentrum des Objekts, dessen Silhouette man berechnen will.)
- Wissen wie man Normalen berechnet.
Und so geht man vor:
- Berechnen der Normalen für die Flächen F1 und F2. -> Normalen N1 und N2.
- Berechnen des Blickvektors V (Betrachterpos - Blickpunkt).
- Berechnen des Winkels zwischen N1 und V. -> Winkel W1.
- Berechnen des Winkels zwischen N2 und V. -> Winkel W2.
Wenn nun einer der beiden Winkel W1 oder W2 > 90° und der andere Winkel <= 90° ist, dann ist die Kante zwischen den Flächen F1 und F2 Teil der Silhouette des Körpers.
Außerdem sollten Kanten die nur zu einem Polygon gehören ebenfalls zur Silhouette gezählt werden.
Wo benötige ich Sie?
Die Silhouette wird zum Beispiel bei Schattenberechnungen benötigt. (Volumetrische Stencilschatten)
Hin und wieder möchte man aber auch einfach nur die Silhouette eines Objektes nachzeichnen.