Created
March 8, 2011 11:57
-
-
Save lava/860193 to your computer and use it in GitHub Desktop.
CG Test Exercises
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
\documentclass{exam} | |
\begin{document} | |
\begin{questions} | |
\section{Koordinatensysteme und Geometrie} | |
\titledquestion{Kameramodell} | |
Gegeben sei eine Kamera $C$ mit Projektionszentrum ${\mathbf{e}}$, Ziel-Vektor $\mathbf{z}$ und normalisiertem Up-Vektor $\mathbf{up}$. | |
\begin{parts} | |
\part | |
Bestimme die Basisvektoren des Kamerakoordinatensystems von $C$. | |
\begin{solution} | |
Es ist $\mathbf{w} = \left(\mathbf{e} - \mathbf{z}\right) / \left| \mathbf{e} - \mathbf{z} \right|$, | |
$\mathbf{u} = \left( \mathbf{up} \times \mathbf{w} \right) / \left| \mathbf{up} \times \mathbf{w} \right|$ und | |
$\mathbf{v} = \mathbf{w} \times \mathbf{u}$. | |
\end{solution} | |
\part | |
Mit welcher Matrix kann ein Vektor aus dem Weltkoordinatensystem in das Kamerakoordinatensystem transformiert werden? | |
\begin{solution} | |
\[ | |
M = \left( \begin{array}{ccc} | |
u_x & u_y & u_z \\ | |
v_x & v_y & v_z \\ | |
w_x & w_y & w_z \end{array} \right) | |
\] | |
\end{solution} | |
\uplevel{Die Bildebene der Kamera sei durch die Parameter $d$, $l$, $r$, $b$, $t$ festgelegt.} | |
\part | |
Was sind die Weltkoordinaten eines Punktes $\mathbf{s}$ mit den Bildkoordinaten $\left(u, v\right)$, $u\in\left[l,r\right]$, $v\in\left[b,t\right]$? | |
\begin{solution} | |
$\mathbf{s} = u \cdot \mathbf{u} + v \cdot \mathbf{v} - d \cdot \mathbf{w}$ | |
\end{solution} | |
\part | |
Wie lautet die Strahlgleichung des Strahls, der vom Projektionszentrum ausgehend durch $\mathbf{s}$ verlaeuft? | |
\begin{solution} | |
$\mathbf{r}\left(t\right) = \mathbf{e} + t\mathbf{d}$, mit $\mathbf{d} = \frac{\mathbf{s}-\mathbf{e}}{\left|\mathbf{s}-\mathbf{e}\right|}$ | |
\end{solution} | |
\end{parts} | |
\question | |
Gegeben seien die Punkte | |
$p_1 = \left( \begin{array}{c} 1 \\ 1 \\ 1 \end{array} \right)$, | |
$p_2 = \left( \begin{array}{c} 0 \\ 0 \\ 4 \end{array} \right)$, | |
$p_3 = \left( \begin{array}{c} 3 \\ 0 \\ 0 \end{array} \right)$, | |
$p_4 = \left( \begin{array}{c} 0 \\ 1 \\ 0 \end{array} \right)$ | |
\\ | |
Sei $\mathbf{g}$ die Gerade, der vom Ursprung durch $p_1$ verlaeuft. | |
\begin{parts} | |
\part | |
Bestimme die Schnittpunkte von $\mathbf{g}$ mit einer Kugel mit Radius 2 um $p_1$. | |
\part | |
Bestimme den Schnittpunkt von $\mathbf{g}$ mit der Ebene, die von den Punkten $p_2$, $p_3$, $p_4$ aufgespannt wird. | |
\part | |
Bestimme die baryzentrischen Koordinaten bezueglich des Dreiecks $\mathbf{d}$ mit den Eckpunkten $p_2$, $p_3$, $p_4$ | |
\part | |
\begin{subparts} | |
\uplevel{In einer Normal Map wurden den Eckpunkten des Dreiecks die Normalen $n_2$, $n_3$, $n_4$ zugewiesen.} | |
\subpart | |
Berechne den reflektierten Strahl $\mathbf{g}_r$ bezueglich der tatsaechlichen Normalen von $\mathbf{d}$. | |
\subpart | |
Berechne den reflektierten Strahl $\mathbf{g}_r$ bezueglich der interpolierten Normalen am Schnittpunkt. | |
\end{subparts} | |
\end{parts} | |
\question | |
Geben sie die implizite und die parametrisierte Darstellung eines Kreises mit Mittelpunkt $m = \left( \begin{array}{c} 2 \\ 1 \end{array} \right)$ und Radius $r=4$ an. | |
\question | |
\begin{parts} | |
\part | |
Das Bild wie vieler 3D-Punkte muss man angeben, damit eine affine Transformation eindeutig festgelegt ist? | |
\begin{solution} | |
4 (LGS mit 12 Unbekannten) | |
\end{solution} | |
\part | |
Das Bild wie vieler 3D-Punkte muss man angeben, damit eine projektive Transformation eindeutig festgelegt ist? | |
\begin{solution} | |
5 (4x4-1 Unbekannte) | |
\end{solution} | |
\end{parts} | |
\question | |
Beweise: Seien $g_1\left(x,y,z\right)$, $g_2\left(x,y,z\right)$ zwei Geraden im projektiven Raum $P\left(R^3\right)$. Dann schneiden sich $g_1$ und $g_2$. | |
\begin{solution} | |
Betrachte die Dehomogenisierungen $G_1\left(x,y\right) = g_1\left(x,y,1\right)$, $G_2\left(x,y\right) = g_2\left(x,y,1\right)$. | |
Schneiden sich $G_1$ und $G_2$ in einem Punkt $\left(x,y\right)$, dann schneiden sich $g_1$ und $g_2$ in $\left(x,y,1\right)$. | |
Andernfalls sind $G_1$ und $G_2$ parallel, also $G_1\left(x,y\right) = ax + by + c_1$ und $G_2\left(x,y\right) = ax + by + c_2$. | |
Dann ist $g_1\left(b,-a,0\right) = g_2\left(b,-a,0\right) = 0$, d.h. $g_1$ und $g_2$ schneiden sich in $\left(b, -a, 0\right)$. | |
\end{solution} | |
\section{Raytracing} | |
\question | |
Welche raeumlichen Datenstrukturen zur Beschleunigung des Raytracing gibt es? Nenne jeweils Vor- und Nachteile. | |
\question | |
Welche Strategien zur Unterteilung der Knoten in einem Kd-Baum gibt es? | |
\question | |
Was sind die Kosten der Traversierung eines Knotens eines kd-Baums? Formel + Erlaeuterung. | |
\question | |
Formel fuer das Phong-Beleuchtungsmodell? | |
\section{Rasterisierung und OpenGL} | |
\question | |
Vor- und Nachteile eines Z-Puffers? | |
\question | |
Unterschied von Gouraud- und Phong-Shading? | |
\section{Kurven und Flaechen} | |
\section{Wahr/Falsch-Fragen} | |
Bei Falsch-Antwort mit kurzer Begruendung. | |
\question | |
Bei isotropen Materialien gilt fuer die BRDF: $f_r\left( \theta_i, \phi_i, \mathbf{x}, \theta_r, \phi_r \right) = f_r\left( \theta_i, \phi_i + \Delta \phi_r, \mathbf{x}, \theta_r, \phi_r + \Delta \phi_r \right)$ | |
\begin{solution} | |
Ja | |
\end{solution} | |
\question | |
Phong-Shading erzeugt bei Kanten mit einem Innenwinkel kleiner als $\frac{\pi}{2}$ immer sichtbare Artefakte. | |
\begin{solution} | |
???? | |
\end{solution} | |
\question | |
Sind $\mathbf{a}$ und $\mathbf{b}$ zwei normalisierte Vektoren, dann gilt $\left| \alpha \mathbf{a} + \left( 1 - \alpha \right) \mathbf{b} \right| = 1$ | |
\begin{solution} | |
Falsch, z.B. $\frac{1}{2} \left( \begin{array}{c} 1 \\ 0 \end{array} \right) + \frac{1}{2} \left( \begin{array}{c} -1 \\ 0 \end{array} \right) = 0$ | |
\end{solution} | |
\question | |
Seien $A$ und $B$ Kugeln mit Volumina $V_A$ und $V_B$, und $B$ sei komplett in $A$ enthalten. Dann ist die Wahrscheinlichkeit $W$, dass ein zufaelliger Strahl durch $A$ auf $B$ trifft $W = \frac{V_B}{V_A}$. | |
\begin{solution} | |
Falsch, die Wahrscheinlichkeit haengt nur von den Oberflaechen von $A$ und $B$ ab. | |
\end{solution} | |
\question | |
Es sei $f\left(x,y\right) = 0$ die implizite Form einer Gerade. Dann existiert auch eine explizite Form $y = f(x)$. | |
\begin{solution} | |
Falsch, Gegenbeispiel: $f\left(x,y\right) = x$ | |
\end{solution} | |
\question | |
Es gibt Mengen die weder konvex noch konkav sind, und es gibt Mengen die sowohl konvex als auch konkav sind. | |
\begin{solution} | |
Wahr. | |
\end{solution} | |
\question | |
Liegt ein Polygon auf einer Ebene die parallel zur Bildebene ist, so koennen Attribute nach der Rasterisierung linear aus den Eckpunkten interpoliert werden. | |
\begin{solution} | |
Wahr | |
\end{solution} | |
\question | |
Die Suche des naechsten Objektes zu einem Punkt $\mathbf{e}$ in einem kd-Baum ist im worst-case $O(n)$, wobei $n$ die Anzahl der Objekte ist. | |
\begin{solution} | |
Wahr. | |
\end{solution} | |
\question | |
- | |
\begin{solution} | |
\end{solution} | |
\section{Wissensfragen} | |
\question | |
Wofuer steht die Abkuerzung BRDF, und womit kann man eine BRDF messen? | |
\begin{solution} | |
Bidirectional reflectance distribution function, mit einem Goniometer | |
\end{solution} | |
\question | |
Worauf ist zu achten, wenn die Normale einer Oberflaeche mithilfe der baryzentrischen Koordinaten interpoliert wird? | |
\begin{solution} | |
Die interpolierte Normale ist im Allgemeinen nicht mehr normalisiert. | |
\end{solution} | |
\question | |
Was besagt Crofton's Theorem? | |
\begin{solution} | |
Gegeben zwei konvexe Objekte A und B, wobei B komplett enthalten ist. Dann ist die Wahrscheinlichkeit dass ein zufaelliger Strahl durch A auch B trifft $P = \frac{SA\left(B\right)}{SA\left(A\right)}$ | |
\end{solution} | |
\question | |
Wie ist die implizite Darstellung der Gerade durch die Punkte $\left( \begin{array}{c} 1 \\ 1 \end{array} \right)$ und $\left( \begin{array}{c} 3 \\ 2 \end{array} \right)$ | |
\begin{solution} | |
$F\left(x,y)\right) = \left( y - y_0\right) - m\left( x - x_0 \right)$ | |
\end{solution} | |
\question | |
Wozu wird der Algorithmus von Cohen-Sutherland verwendet? | |
\begin{solution} | |
Zum effizienten Clipping von Linien. | |
\end{solution} | |
\question | |
Wie funktioniert der Maler-Algorithmus? (Painter's Algorithm) | |
\begin{solution} | |
Sortiere Polygone nach Abstand zur Kamera und zeichne die hintersten zuerst. | |
\end{solution} | |
\question | |
Wozu dient der Odd/Even-Test? | |
\begin{solution} | |
Feststellen ob ein Punkt inner- oder ausserhalb eines beliebigen Polygons liegt. | |
\end{solution} | |
\question | |
Wie interpoliert man die Texturkoordinate $s$ eines Dreiecks perspektivisch korrekt? | |
\begin{solution} | |
Interpoliere $\frac{1}{z}$ und $\frac{s}{z}$ linear und berechne $s = \frac{s}{z} / \frac{1}{z}$ | |
\end{solution} | |
\question | |
Wozu dient der Algorithmus von Sutherland-Hodgeman? | |
\begin{solution} | |
Clipping eines Polygons gegen eine konvexe Clip-Region | |
\end{solution} | |
\question | |
- | |
\begin{solution} | |
\end{solution} | |
\end{questions} | |
\end{document} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment