kurse:efcomputergrafik:exam-teil2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
kurse:efcomputergrafik:exam-teil2 [2020/01/03 18:16] – created Ivo Blöchligerkurse:efcomputergrafik:exam-teil2 [2020/02/05 20:06] (current) – [Brainstorming für Prüfungsfragen] Ivo Blöchliger
Line 1: Line 1:
 +====== Prüfung am Donnerstag 20. Februar 2020 ======
 +
 +===== Brainstorming für Prüfungsfragen =====
 +
 +Folgende Liste von Fragen ist weder vollständig noch wirklich repräsentativ.
 +
 +Einige Fragen sind ganz absichtlich unterbestimmt, d.h. es liegt an Ihnen, fehlende Angaben zu erkennen und sinnvoll durch Platzhalter zu ersetzen.
 +
 +  * Auf Papier sind 4 Punkte $P_0$ bis $P_3$ gegeben. Konstruieren Sie den Punkt auf der dadurch definierten kubischen Bezierkurve mit Parameter $t=\frac{1}{3}$.
 +  * Gegeben sind 4 Punkte $P_0$ bis $P_3$. Geben Sie die Parameterdarstellung $P(t)$ der dadurch definierten kubischen Bezierkurve an.
 +  * Von einer quadratischen Bezierkurve kennt man den Startpunkt $P_0$ und den Endpunkt $P_2$, sowie die Richtungen der Tangenten in diesen Punkten. Beschreiben Sie, wie man geometrisch den Kontrollpunkt $P_1$ bestimmt.
 +  * Von einer kubischen Bezierkurve kennt man den Startpunkt $P_0$ und den Endpunkt $P_3$, sowie die orientierten Richtungen der Tangenten in diesen Punkten. Skizzieren Sie Gebiete der Ebene, in denen kein Kurvenpunkt liegen kann. Beschreiben Sie zwei verallgemeinerbare, qualitativ unterschiedliche Fälle. //Ok, ok, ist nicht wirklich eine geeignete Prüfungsfrage. Aber spannend ist die Frage schon!//
 +  * Gegeben sind 4 Punkte $P_0$ bis $P_3$ einer kubischen Bezierkurve. Bestimmen Sie die Ableitung nach $t$ der Parameterdarstellung $P(t)$. Geben Sie die Parameterdarstellung $P(t)$ der dadurch definierten kubischen Bezierkurve an.
 +  * Erklären Sie in ca. 4 Sätzen, was in Python eine Klasse und was eine Instanz ist.
 +  * Gegebenes Code-Beispiel mit einer Klasse erklären.
 +  * Um einen (geometrischen) Vektor in Python zu programmieren, könnte ein einfaches Array mit 2 (oder 3) Einträgen verwendet werden und die nötigen Funktionen, die gewünschte Vektoroperationen ausführen. Oder es könnte eine Klasse Vector implementiert werden. Erläutern Sie 3 Vorteile und 2 Nachteile der Programmierung mit Klassen gegenüber einfachen Arrays in je 1-2 stichwortartigen Sätzen.
 +  * Gegeben ist ein unvollständiges Code-Beispiel einer Klasse. Sie sollen dazu eine fehlende Methode implementieren.
 +  * Gegeben sind zwei Bounding-Boxen $B_1$ und $B_2$ wobei angenommen wird, dass die Seitenverhältnisse gleich sind. Erklären Sie, wie die affine Transformation (in der Form Streckung gefolgt von Verschiebung), die die Box $B_1$ auf die Box $B_2$ abbildet, bestimmt werden kann.
 +  * Lösen Sie das inverse Problem für den Whiteboard-Plotter, d.h. gegeben sind zwei Radien $r_1$ und $r_2$, bestimmen Sie daraus die $x$- und $y$-Koordinaten des Stifts.
 +  * Erklären Sie, wie formal exakt die Länge einer Bezierkurve mit einem Integral geschrieben werden kann. Programmieren Sie einen kleinen Python-Code, der die Länge einer Bezierkurve angenähert berechnet. Gehen Sie davon aus, dass Methoden zur Berechnung der Position $x(t)$ und der Ableitlung $x'(t)$ gegeben sind.
 +  * Erklären Sie, wie für einen gegebenen Parameter $t$ bei Geschwindigkeitsbetrag 1 die Bahnbeschleunigung auf einer Bezierkurve formal berechnet werden kann und wie diese in einem kleinen Python-Code berechnet werden kann. Gehen Sie davon aus, dass Methoden zur Berechnung der Position $x(t)$ und der Ableitlung $x'(t)$ gegeben sind.
 +  * Gegeben sind ein Parameter $t$ für einen Punkt auf einer Bezier-Kurve und ein Geschwindigkeitsbetrag $v$ für diesen Punkt. Beschreiben Sie, wie die neue Geschwindigkeit und der neue Parameter für den Punkt berechnet werden kann, der sich um die Distanz $s$ weiter auf der Kurve befindet. Einmal ohne Reibungsverluste, einmal mit Reibungsverlusten. 
 +  * Gesucht ist eine Funktion $f: [0,1] \to \mathbb{R}$, wobei für $x=0$ und $x=1$ die Werte der Funktion und deren Ableitung gegeben sind. Erklären Sie, wie so eine Funktion bestimmt werden kann, einmal ohne und einmal mit der Hermit'schen Basis.
 +  * Erklären Sie, was die Hermit'sche Basis für Polynome dritten Grades ist und leiten Sie diese her.