====== Graphische Datenverarbeitung I ====== ===== Allgemeines ===== * Homepage: http://www.gris.informatik.tu-darmstadt.de/lehre/courses/cg1/index.html ===== Übungen ===== * 2-5 Personen * 2-3 Wochen Bearbeitungszeit * **Testate:** 22.11., 6.12., 20.12., 17.1., 31.1. * sonstige Übungstermine: Sprechstunde, Beantwortung von Fragen * Übungsschein ab 70% der erreichbaren Punkte, Bonuspunkte ===== 31.10.2005 ===== * Themen GdVI: Darstellung eines vorhandenen Modells * graphische Daten eingegeben auf CPU * Darstellung in [[wp>Scene Graph|Szenengraph]] * GPU: Geometrieverarbeitung, Rasteriesierung * Abtasttheorie: Grosse Fehlerquelle * **Eingabe graphischer Daten**: Lichtgriffel, [[wp>Mouse (computing)|Maus]] (Kugel oder optisch), Grafiktablett, ... ===== 7.11.2005 ===== * problemabhängig: Ursprung sinnvoll platziert * Achsen linear unabhängig (logischerweise) * lineare Räume: Fester Ursprung/Achsen * lineare Operationen erhalten die Null (Abgeschlossenheit) * Affine Räume gegenüber affinen Operationen abgeschlossen * Ziel: Verschiebung er Koordinatensysteme (Translation) * Punktprimitiv am häufigsten in Partikelsystemen * Tesselierung: Überführung von Körperoberflächen in Polygonkonstrukte * verschiedene Modelle: erst ab 5-8 merkt der Mensch die Wiederholung nicht mehr * isotrop: Proportionen bleiben erhalten * Translation -> nicht linear * wenn Summe der lamda = 1 -> Affinkombination (bei Linearkombination von Vektoren) * baryzentrische Koordinaten -> Skalare der affinen Kombination * Konvexkombination von Punkten in der konvexen Hülle -> auch in Hülle * baryzentrische Koordinaten __größergleich__ Null * Egal ob: * Erst Transformation der Punkte, dann Gerade durch * Erst Gerade, dann Transformation * Lineare Abbildung (Matrix) = multiplikativer Teil, Translation (Vektor) = additiver Teil * lineare Abbildung: Skalierung, Scherung, Rotation * Erweiterung: Abbildung und Translation in eine 4x4 Matrix * Hintereinanderausführung -> Matrizenmultiplikation * zu beachten: Reihenolge (A_n * ... * A_2 * A_1 * p) * Vorteil: Transformationen lassen sich akkumulieren * Linke obere 3x3 Untermatrix: linearer Teil, rechte Spalte: Translation * Homogene Form: rechts unten 1 * Bilder der Einheitsvektoren in Spalten (__Folie 26__) * Dadurch Herleitung einfach, da jede lineare Abbildung auch Basisvektoren beeinflusst * Skalierung: Skalierfaktoren auf Diagonale * w -> zur Homogenisierung * Scherung = Verzerrung * isotrope Skalierung: s auf Diagonale, rechts unten -> 1/s * Scherung: Folie 31 * Rotation: Folie 33 * Rotation um beliebige Achse: sozusagen custom Koordinatensystem durch Achse induziert, wird auf Ursprungssystem rotiert, dann passiert "gewünsche Rotation", dann wieder zurück rotiert * Rotation um beliebigen Punkt: Erst Translation, dann Rotation ===== 14.11.2005 ===== * Folie 51 -> Folie 8 * relevant: Open Inventor, Performer * Hüllkörper nicht immer gut aus Szenengraph generierbar * Bottom-up: Immer Paare zusammenfassen -> zwar gute Hierarchie aber sehr teuer * Top-down: Erstmal alle, dann Aufteilung in Cluster * Insertion: Mit zwei beginnen, Hüllkörper -> dann Element für Element dazu ===== 21.11.2005 ===== * ( (a11, a12, a13, x0) (a21, a22, a23, y0) (a31, a32, a33, z0) (p0, p1, p2, p3) ) => p: perspektivische Verzerrung * projektiver Einsraum: projektive Gerade * projektiver Zweiraum: projektive Ebene * zusätzliche Koordinate beschreibt Hyperebene, die die Einbettung beschreibt ~~DISCUSSION~~