2013-02
Prüfer: Dr. Roberto Grosso
Beisitzer: Dipl.-Inf. Magdalena Prus
Die Atmosphäre während der Prüfung war angenehm. Der geforderte Stoff richtete sich strikt nach der Liste der relevanten Themen, die in der Vorlesung vorgestellt wurde. Diese Liste wurde von Dr. Grosso durchgegangen, wobei er anscheinend in jeder Prüfung andere Schwerpunkte setzt und eine andere Reihenfolge wählt, in der die Themen gefragt werden.
Q: Was ist hierarchische Kinematik?
Hierarchischer Aufbau eines Skeletts.
Man hat Links und Joints. Diese sind hierarchisch organisiert, wobei man eine Wurzel hat.
Transformationen werden auf darunterliegende Links angewandt.
Q: Welche Arten von Gelenken haben wir besprochen?
Drehgelenk (1 Freiheitsgrad), Teleskopgelenk (1 Freiheitsgrad), Kugelgelenk (3 Freiheitsgrade), Ebenengelenk (2 Freiheitsgrade)
Q: Man hat einen Roboterarm (3 Gelenke) und will den zu einem Punkt (2D) bewegen. Wie macht man das?
Inverse Kinematik
Winkel an den Gelenken sind die gesuchten Parameter
Gleichungssystem aufstellen
3 Gelenke > 2 Koordinaten ⇒ Jacobi-Matrix nicht quadratisch
Lösung: Rechte Pseudoinverse verwenden
Q: Wodurch kann man die Bewegung von Punktmassen beschreiben?
Q: Das ist eine DGL, die kann man mit Integrationsverfahren lösen. Was gibt es da für Verfahren?
Einschritt-/Mehrschritt-
explizit/implizit
Q: Ein Beispiel für ein implizites Verfahren?
Q: Was ist da besonders?
Q: Und bei expliziten Verfahren?
Q: Warum nimmt man dann implizite Verfahren überhaupt?
Q: Was sind Mehrschritt-Verfahren?
Q: Wie beschreibt man ein Partikelsystem?
Partikel = minimales Teilchen
Eigenschaften: Position, Geschwindigkeit, Masse, Lebensdauer
Q: Man hat ja nicht nur ein Partikel, sondern mehrere. Wenn man damit Simulationen durchführen möchte, was muss man beachten?
Q: Man will die Partikel auch darstellen. Wie geht man vor?
Q: Man möchte einen Vulkanausbruch mit Partikeln darstellen, wie macht man das?
Punkt P im Zentrum des Kraters
Partikel zufällig gestreut um Mittelwert P erzeugen
Geschwindigkeiten und andere Parameter auch mit Zufallsanteilen
Q: Ein Partikel trifft auf eine Wand. Was passiert?
Partikel prallt ab
Wie bei Reflexion
Q: Muss das immer so funktionieren oder kann der Geschwindigkeitsvektor auch anders aussehen?
Reibung: Komponente in Richtung der Fläche schwächen
Komponente in Richtung der Normale schwächen
Dadurch: Anderer Geschwindigkeitsvektor
Q: Welche Bounding Volumes haben wir betrachtet und wie funktioniert die Kollisionsdetektion?
AABB
Kollisionsdetektion: Projektionen auf Achsen betrachten
Berechnung: Minimale/Maximale Ausdehnung bezüglich Achsen
Kugeln
Kollisionsdetektion: Distanz zwischen Mittelpunkten mit Summe der Radien vergleichen
Berechnung: Welzl-Algorithmus: Zwei Punkte definieren Kreis; Punkt, der außerhalb liegt, betrachten und Kreis erweitern; rekursiver Aufruf
OBB
Kollisionsdetektion: Projektionen auf 15 Achsen (3D) betrachten; Achsen der OBBs (6) + Kreuzprodukte der Achsen (9)
Berechnung: Mit PCA
k-DOPs
Kollisionsdetektion: Projektionen auf fixe Normalen
Berechnung wurde nicht gefragt
Vorteile gegenüber AABBs: Bessere Annäherung der Geometrie
Vorteile gegenüber OBBs: Weniger Tests nötig
Q: Man kann das Ganze auch hierarchisch organisieren, wie geht man da vor?
Bounding Volume Hierarchy
Bounding Volume von mehreren Objekten berechnen
Enthält wiederum Bounding Volumes von Teilmengen, usw.
Q: Und was ist Space Partitioning?
Q: Was sind Solid Leaf Trees?
Q: Wie kann man damit erkennen, ob ein Punkt in einem Objekt ist?
Baum traversieren und testen, ob Punkt in positivem oder negativem Halbraum
Wenn Blatt „Empty“ ist ⇒ nicht im Objekt
Wenn Blatt „Solid“ ist ⇒ im Objekt