Beschriftung von 3 DModellen Verteidigung zur Diplomarbeit von
Beschriftung von 3 D-Modellen Verteidigung zur Diplomarbeit von Martin Olbrich
Gliederung • Motivation • Grundlagen – Kategorien von Beschriftungen – Beispiele • Meine Arbeit – Algorithmen – Struktur • Programmvorstellung • Ausblick 2
Motivation 3
Gliederung • Motivation • Grundlagen – Kategorien von Beschriftungen – Beispiele • Meine Arbeit – Algorithmen – Struktur • Programmvorstellung • Ausblick 4
Grundlagen Einteilung in: • statisch / dynamisch • 2 D, 2. 5 D, 3 D • nach Layout 5
Statisch 2 D • Landkarten • „gescannte“ Bilder 6
Dynamisch 2 D • Navigationssysteme / Routenplaner • Google. Earth 7
Dynamisch 2 D 8
Dynamisch 2. 5 D • Computerspiele • 3 D-Karten 9
Dynamisch 2. 5 D 10
Dynamisch 2. 5 D 11
Dynamisch 3 D • 3 D-Modell Betrachter 12
Dynamisch 3 D 13
Dynamisch 3 D 14
Beschriftungslayouts Art der Verbinder: • orthogonal • gerade Anordnung der Beschriftungen: • am Ort • Kreislayout • Randlayout Art des Beschriftungstextes: • einzeilig • mehrzeilig • Legendenschlüssel 15
Layout: gerade / orthogonal 16
Rand- / Kreislayout 17
Gliederung • Motivation • Grundlagen – Kategorien von Beschriftungen – Beispiele • Meine Arbeit – Algorithmen – Struktur • Programmvorstellung • Ausblick 18
Ablaufschema Geometrie rendern Sichtbarkeit der Beschriftungen bestimmen Verschiebungen berechnen Zeitliche Kohärenz umsetzen Geometrie rendern Beschriftungshintergründe rendern Framebuffer löschen Rand beachten Beschriftungstexte rendern Vorverarbeitung Datenverarbeitung Rendervorgang 19
Ablaufschema Geometrie rendern Sichtbarkeit der Beschriftungen bestimmen Verschiebungen berechnen Zeitliche Kohärenz umsetzen Geometrie rendern Beschriftungshintergründe rendern Framebuffer löschen Rand beachten Beschriftungstexte rendern Vorverarbeitung Datenverarbeitung Rendervorgang 20
Bestimmung der Sichtbarkeit • Bildschirm-Clipping • Entfernung vom Model • Verdeckung des Ankerpunktes 21
Ablaufschema Geometrie rendern Sichtbarkeit der Beschriftungen bestimmen Verschiebungen berechnen Zeitliche Kohärenz umsetzen Geometrie rendern Beschriftungshintergründe rendern Framebuffer löschen Rand beachten Beschriftungstexte rendern Vorverarbeitung Datenverarbeitung Rendervorgang 22
Verschiebealgorithmus Ziele: • verdeckungsfrei • minimale Verschiebung vom Ursprungsplatz 23
Verschiebealgorithmus Metrik: • Überlappungslänge in Verschiebungsrichtung • Entfernung vom ursprünglichen Punkt ldist m= å lintersect (2 lintersect + ldist ) all rectangles 24
Verschiebealgorithmus 10 Metrik m 10 -10 0 10 25
Verschiebealgorithmus 1 2 vmin 26
Verschiebealgorithmus 27
Verschiebealgorithmus 28
Verschiebealgorithmus • Metrikoptimierung Prototyp 29
Verschiebealgorithmus Metrikverläufe für 5 zufällig erstellte Anordnungen mit 50% Flächenüberdeckung 30
Ablaufschema Geometrie rendern Sichtbarkeit der Beschriftungen bestimmen Verschiebungen berechnen Zeitliche Kohärenz umsetzen Geometrie rendern Beschriftungshintergründe rendern Framebuffer löschen Rand beachten Beschriftungstexte rendern Vorverarbeitung Datenverarbeitung Rendervorgang 31
Sicherung der zeitlichen Kohärenz • maximale Schrittweite • Ein- und Ausblendungen 32
Sicherung der zeitlichen Kohärenz • Bestimmung des Verschiebevektors Label poldpos poldanchor r vpicmov r vmov pnewpos pnewanchor 33
Ablaufschema Geometrie rendern Sichtbarkeit der Beschriftungen bestimmen Verschiebungen berechnen Zeitliche Kohärenz umsetzen Geometrie rendern Beschriftungshintergründe rendern Framebuffer löschen Rand beachten Beschriftungstexte rendern Vorverarbeitung Datenverarbeitung Rendervorgang 34
Font Rendering • Windows-Bitmap-Renderer • Free. Type – Bitmap – Textur (pro Buchstabe eine Textur) – Textur (eine Textur pro Beschriftung) 35
Font Rendering Zeit in s Zeitvergleich der 4 Font Renderer: jeweils Vorbereitungszeit und Renderzeit 36
Klassenstruktur 37
Gliederung • Motivation • Grundlagen – Kategorien von Beschriftungen – Beispiele • Meine Arbeit – Algorithmen – Struktur • Programmvorstellung • Ausblick 38
Programmvorführung 39
Gliederung • Motivation • Grundlagen – Kategorien von Beschriftungen – Beispiele • Meine Arbeit – Algorithmen – Struktur • Programmvorstellung • Ausblick 40
Ausblick • Verschiebung von Beschriftungen an den Objektrand • Verbesserter Verschiebealgorithmus • Zuweisung von Beschriftungsankerpunkten zu Regionen 41
- Slides: 41