CGA
Computergraphik
Computergraphik
-
- 1 / 71
-
Cartes-fiches
Wie sieht die Transformationsmatrix für eine Rotation um den WInkel a um den Ursprung aus?
(cos a -sin a 0 )
(sin a cos a 0)
(0 0 1)
Nenne die Inversen Transformationsmatritzen ,die die Elementaren Transformationen rückgängig machen.
Translation : vorzeichen von dx und dy umdrehen
Skalierung : statt * dx und * dy => * 1/dx , *1/dy
Rotation : cos & sin von -alpha
Scherung : -alpha
Wie lautet die Transformationsmatrix für eine Skalierung im 3D-Raum mit homogenen Koordinaten und welchen Einfluss hat die größe von den Faktoren sx, sy und sz?
(sx 0 0 0)
(0 sy 0 0)
(0 0 sz 0)
(0 0 0 1)
s > 1 Vergößerung
s<1 Verkleinerung
s<0 Spiegelung an der Achse
Benenne die Komponenten einer Homogenen Ebenengleichung in 3D .
Wie lassen sich die Achsenabschnitte der Ebene aus der Ebenengleichung ableiten ?
E = (ex , ey , ez , ew )
ax = X Achsenabschnitt = -ew / ex
ay = Y Achsenabschnitt = -ew / ey
az = Z Achsenabschnitt = -ew / ez
Wie kann man aus einer homogenen Ebenengleichung die normale dieser Ebene herleiten ?
N = (ex , ey , ez , sqrt (ex^2 + ey^2 + ez^2 ))
Wie kann man den Abstand eines Punktes zu einer Ebene im Homogenen 3D raum bestimmen ?
Gegeben : EBene E (1,1,1,1) p = (2,3,3,1)
Betrag (E * P ) / sqrt(ex^2 + ey^2 +ez ^2 )
Wie sieht die 3D Rotationsmatrix für eine Rotation um die X- Achse aus?
Zusatz : Die "nach oben gerichtete Achse ist Y"
(1 0 0 0)
(0 cos -sin 0)
(0 sin cos 0)
(0 0 0 1)
Wie sieht die 3D Rotationsmatrix für eine Rotation um die Y- Achse aus?
Zusatz : Die "nach oben gerichtete Achse ist Y"
(cos 0 sin 0)
(0 1 0 0)
(-sin 0 cos 0)
(0 0 0 1)
Anmerkung : Cos(alpha) = Cos(-Alpha)
Aber Sin(alpha ) UNGLEICH Sin(-Alpha )
Bei der "nach oben" gerichteten Matrix ist das VZ bei den SInustermen vertauscht.
Wie sieht die 3D Rotationsmatrix für eine Rotation um die Z- Achse aus?
Zusatz : Die "nach oben gerichtete Achse ist Y"
(cos -sin 0 0)
(sin cos 0 0)
(0 0 1 0)
(0 0 0 1)
Wie sieht die 3D Rotationsmatrix für eine Rotation um die Z- Achse aus?
Zusatz : Die "nach oben gerichtete Achse ist Y"
(cos -sin 0 0)
(sin cos 0 0)
(0 0 1 0)
(0 0 0 1)
Welche Eigenschaften hat die Abbildung mittels Parallelprojektion ?
Bei der Parallelprojektion wird ein Objekt mittels paralleler Projektionsstrahlen abgebildet , diese Strahlen müssen nicht orthogonal ( 90° ) zur Bildfäche stehen .
Bilder der Parallelprojektion haben die Eigenschaft ihre Tiefeninformation zu verlieren .
Die Projektionsmatrix sieht folgendermaßen aus :
(1 0 0 0)
(0 1 0 0)
(0 0 0 0) // hier geht die Z-Information verloren
(0 0 0 1)
Worin liegt der Unterschied zwischen Parallelprojektion und Orthogonalprojektion ?
Parallel : Projektionsstrahlen sind zueinander parallel .
Orthogonal : Projektionsstrahlen sind zueinander parallel und stehen 90° auf der Bildfläche
Welchen Punkt p=(x,y,z,w) hat das Projektionszentrum bei der Zentralprojektion, und wieso wird der Winkel Alpha meistens nur als Alpha/2 angegeben?
Der Punkt hat die Koordinaten p=(0,0,-d,1) , wobei d der Abstand vom Projektionszentrum zur Projektionsebene ist.
Der Winkel wird zur vereinfachung oft nur als Alpha/2 angegeben, da die Z-Achse den Bildmittelpunkt angibt.
Perspektivische Verkürzung bedeudet?
Welche Eigenschaften zeigt die isometrische Projektion ?
Bei der isometrischen Projektion stehen die Koordinatenachsen im 120° Winkel aufeinander .
Es handelt sich ebenfalls um eine Art der parallelprojektion , bei der Allerdings X und Y Koordinaten verändert dargestellt werden.
Matrix:
(1/2 sqrt(3) 0 -1/2 sqrt(3) 0)
(-1/2 1 -1/2 0)
(0 0 0 0)
(0 0 0 1)
Wie sieht die Matrix für die Perspektivische Verkürzung aus und wieso werden nur die z-Koordinaten manipuliert?
(1 0 0 0)
(0 1 0 0)
(0 0 1/1-Zmin -Z/1-Zmin)
(0 0 1 0)
Es werden nur die Z-Koordinaten manipuliert, da bei der Perspektivischen Verkürzung nur die Tiefeninformationen verändert werden und keine Transformationen stattfinden.
Wie stehen die Koordinatenachsen bei der Kavalierprojektion aufeinander?
Zwei der Drei Achsen stehen im 90° Winkel zueinander ,
die Tiefenachse kann Variabel gewählt werden.
Welche Informationen werden in der Winged Edge Datenstruktur gespeichert ?
Für jede Ecke
Für jede Kante
Für jedes Polygon
Für Ecken : Koordinaten & Index einer angrenzenden Kante
Für Kanten :
Die beiden Eckpunkte ( als Indizes aus Eckenliste )
Die beiden angrenzenden Polygone (jeweils in Richtung der Kante linksdrehend oder rechtsdrehend bestimmt)
4 Kanten die von den Eckpunkten ausgehen und zu einem der angrenzenden Polygone gehören
Welche Vorteile bietet wie Winged Edge Datenstruktur gegenüber einer einfachen Eckenliste ?
-Nachbarschaftsinformationen sind sehr schnell erreichbar (Für z.B Phong Shading sehr wichtig )
-Gute Balance zwischen Redundanz und Geschwindigkeit
Wozu benötigt man die Eulersche Formel ?
Wie sieht sie für Objekte ohne Löcher / Borhungen aus ?
Man kann damit Testen ob ein 3D Modell Konsistent modelliert ist .
Dabei handelt es sich nur um eine hinreichende Bedingung.
Formel : Anzahl Ecken - Anzahl Kanten + Anzahl Flächen = 2
Wofür steht CSG und wofür wird es verwendet?
Constructive Solid Geometry
Man bildet aus Primitiven Objekten komplexere, indem man die Primitiven mit Boolchen Operationen verknüpft.
Wofür steht BSP und wozu kann man BSP-Trees verwenden ?
BSP steht für Binary Space Partition und ist ein Verfahren , die Lage von Objekten zueinander zu beschreiben .
Bei dem Verfahren wird jede Polygonfläche ins unendliche Verlängert und teilt so den Raum in 2 Teile.
Aus der Information welche ob andere Knoten / Punkte rechts oder links dieser Ebene liegen wird dann ein Baum aufgespannt.
Wofür werden Octree's benutzt und wie funktionieren sie?
Octree's sind eine Datenstruktur für 3D-Objekte.
Der Objektraum wird in 8 Teil-Würfel unterteilt, jeder Teil-Würfel kann 3 zustände haben:
1. Voll
- zusätzlich zu speichern: Objekteigenschaften
2. leer
3. teils-teils
- enthält Zeiger auf 8-Teilwürfel
Welche Hausdorff Dimension hat :
eine Gerade linie?
eine geschwungene Linie ?
eine Fläche ?
ein Körper ?
1) ca. 1
2) ca 2
3) zwischen 2 und 3
4) zwischen 3 und ~
Was sagt die Hausdorff Dimension aus?
Bei der ermittlung der Hausdorff Dimension bedeckt man eine Linie / Fläche / Körper mit Kresien / Kugeln mit Radius r.
Die Hausdorff Dimension bezeichnet das Verhältnis von Anzahl der Kugeln zu ihrem Radius.
Also N(r) = 1/ r^d , N(Anzahl abhängig vom Raidus) , r = Radius , d = Hausdorff Dimension
Was ist das Grundprinzip von L-Systemen und wofür können diese Verwendet werden?
L-Systeme sind Objekte mit nicht ganzzahliger Hausdorff-Dimension.
Mit ersetzungsregeln lassen sich Objekte mit immer feineren Strukturen erstellen.
z.B
F - F + + F - F
F = Zeichne einen Schritt
+, - = Drehe Richtung
Zwischen welchen "Räumen" unterscheidet man bei Verfahren zur Entfernung verdeckter Bildteile ?
Wie sieht die Komplexität der auf diesen Räumen basierenden Algorithmen aus?
Bildraum-Algorithmen : Pixelorientiert , Komplexität O (Anzahl Objekte * Anzahl Pixel)
Objektraum - Algorithmen : Komplexität (Anzahl Objekte *Anzahl Objekte)
Was ist das sog. "Painter Verfahren" und wozu benötigt man es?
Das Painter Verfahren ist eine Technik zum Entfernen verdeckter Bildteile.
Voraussetzung : Raum ist Vorsortiert ( BSP-Baum )
Funktion : Elemente werden von hinten nach vorne gemalt, vorne liegende Objekte übermalen dahinter liegende
Probleme :
-Auch unsichtbare Teile werden zunächst gerendert
-Schattenwurf und Reflexion müssen vorab bestimmt werden
-Überlappungen und Durchdringungen erzeugen fehlerhafte Bilder
Wofür wird das Back Face Culling benutzt, wie Funktioniert es und was sind die Nachteile von diesem Verfahren?
Das back face culling wird benutzt um verdeckte Polygone zu entfernen damit man diese nicht Rendern muss. Die Vorrausetzung hierfür ist, das alle Normalen der Polygonflächen nach außen zeigen.
Wenn das Skalarprodukt von der: Oberflächennormale * Richtung zum Betrachter < 0 (Also der Winkel größer 90grad) kann die Oberfläche entfernt werden.
Dieses verfahren ist aussreichend bei Konvexen Objekten.
Um was für eine Art von Algorithmen handelt es sich jeweils bei den folgenden Verfahren?
Painter-Verfahren
Back face culling
Z-Buffer
Painter-Verfahren => Bildraum Algorithmus
Back face culling => Objektraum Algorithmus
Z-buffer => Bildraum Algorithmus
Wie funktioniert das Z-Buffer Verfahren ?
Das Z-Buffer verfahren berechnet für jede Fläche eine Tiefeninformation sowie eine Farbinformation .
Bildschirm : Pixelarray
Tiefeninformation : Z-Buffer mit gleicher Größe wie Pixelarray
Farbinformation : RGB - Buffer mit gleicher Größe wie Pixelarray
Bei Initialisierung :
-Z-buffer enthält 0
-Raum ist in X Tiefenebenen unterteilt
-Farbbuffer enthält HIntergrundfarbe
Szene wird durchlaufen :
-Anhand der Position eines Objekts im Raum wird seine Tiefeninformation bestimmt
-Wenn ein Objekt näher am Betrachter leigt wird seine Tiefeninformation in den Z-Buffer geschrieben
Nach einem Durchlauf :
-Alle Flächen haben eine Tiefeninformation
-Im Z-Buffer stehen nur die Werte der am nächsten am betrachter liegenden Objekte
-In Kombination mit dem Farbbuffer kann so das sichtbare Bild bestimmt werden