Geometric Representation And Processing

Slides:



Advertisements
Ähnliche Präsentationen
8. Termin Teil B: Wiederholung Begriffe Baum
Advertisements

Kap. 13 Sweep-Line Algorithmen Kap Schnittprobleme
Rekursion: Rekurrenz: Algorithmen rufen sich selbst (rekursiv) auf.
Falls Algorithmen sich selbst rekursiv aufrufen, so kann ihr Laufzeitverhalten bzw. ihr Speicherplatzbedarf in der Regel durch eine Rekursionsformel (recurrence,
Polynomial Root Isolation
Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
Körperberechnung Würfel Einheitswürfel Oberfläche Volumen Quader
7. Natürliche Binärbäume
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
8 Behandlung von Begriffen 8.1 Grundlagen aus Logik und Psychologie
Marco Barz Seminar über Algorithmen SoSe2007
Kollisionen erkennen Kollisions- und Schnittpunkttests auf Dreieckbasis Kollisions- und Schnittpunkttests auf Viereckbasis Einsatz von achsenausgerichteten.
Kombinatorische Topologie in der 3d Geomodellierung
Anwendungsverteilung und räumliche Ausdehnung
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Bäume: Grundlagen und natürliche Suchbäume) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (20 - AVL-Bäume: Entfernen, Bruder-Bäume) Prof. Th. Ottmann.
Algorithmen und Datenstrukturen
Kapitel 5 Stetigkeit.
Kapitel 4 Geometrische Abbildungen
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
Mathematische Grundlagen
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
6. Technische Grundlagen der Interoperabilität 6.1 Das Modell der SimpleFeatures (OGC) von Martin Kütt Seminar Geoinformation, WS 01/02 (7. Sem.) Betreuer:
Lösung der Aufgabe 1: Die Erweiterung des Diagramms auf „Winged Egde“ besteht in zwei Beziehungen, nr-Kante und vl-Kante, zwischen der Klasse Kante. Jede.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung In welcher Masche liegt der Punkt p?
Externe Datenstruktur lineare Liste
Beispielrelation Buchbestellungen H = Menge der bedeutenden Ziele = {a, d} Schwelle T = 4 Stichprobe S = {a, b, a, a, a, a} mit s = |S| = 6 N = Anzahl.
§14 Basis und Dimension  (14.1) Definition: V sei wieder ein K-Vektorraum. Eine Menge B von Vektoren aus V heißt Basis von V, wenn B ist Erzeugendensystem.
Punktbeschriftung mit vier Rechtecken gleicher Höhe (Anzahlmaximierung) Julia Löcherbach.
BSP Binary Space Partitioning
Seminarvortrag über die Orientierbarkeit von Flächen
Tetraederzerlegung Ina Ehmann Tetraederzerlegung.
FHP - Fachbereich Bauingenieurwesen
Effiziente Algorithmen
Flüsse, Schnitte, bipartite Graphen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation I Vorlesung 5 WS 2000/2001 Topologie, Landkarten, Datenstrukturen.
Effiziente Algorithmen
6. Lange Nacht der Mathematik
Geometrische Netze Erstellung.
Datenstrukturen für Landkarten
Vier/Fünf-Farben-Satz
Computergraphische Visualisierungs- verfahren für 3D-Stadtmodelle
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 7 SS 2000 Punkt-in-Polygon-Verfahren I (Trapezkarte)
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Objekte und ihre Beschreibung
Petrinetze 1. Einführung Informatik : wesentlich Modellierung von
Landkarten Landkarten sind Tesselationen mit folgenden Eigenschaften:
Analyse der Laufzeit von Algorithmen
Geometric Representation
Neuer Abschnitt: Modellierung des Raumes
Constraint Delaunay Triangulations
Routenplanung querfeldein - Geometric Route Planning
„Topologie“ - Wiederholung der letzten Stunde
Raumbezogene Zugriffsverfahren
Datenaustausch und Interoperabilität
Delauny Triangulierung
Institut für Informationssysteme Technische Universität Braunschweig Institut für Informationssysteme Technische Universität Braunschweig Verdrängung von.
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren.
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Einführung in die Informationsverarbeitung Teil Thaller Stunde V: Wege und warum man sie geht Graphen. Köln 14. Januar 2016.
Spärliche Kodierung von Videos natürlicher Szenen Vortragender: Christian Fischer.
Rechen- und Kommunikationszentrum (RZ) Selektionsstrategien auf Graphstrukturen Sven Porsche Seminarvorträge Aachen.
 Präsentation transkript:

Geometric Representation And Processing

Gliederung Grundlagen Direkte Darstellungsmethoden Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Thomas Faltermeier

Grundlagen Geometrische Repräsentation ist die Darstellung eines ‚Körpers‘ am Computer durch mathematische Modelle Theoretisch muss der dargestellte Körper nicht real sein, die Darstellung eines realen Körpers hat jedoch den Vorteil, dass dieser feste Eigenschaften besitzt Grundlage für: Berechnung der geometrischen Eigenschaften Darstellung Weitergehende Anwendungen(z.B. Grafikeffekte)‏ Berechnung physikalischer Eigenschaften nach weiterer Beschreibung mit Materialeigenschaften(z.B. Elastizität)‏ Thomas Faltermeier

Definition starrer Körper Translationsvariant(frei verschiebbar)‏ Rotationsvariant(frei drehbar)‏ Echte Dreidimensionale Strukturen, d.h. keine isolierten/frei baumelnden Punkte, Kanten oder Flächen Oberfläche teilt den Raum in Inneres und Äußeres auf Thomas Faltermeier

Darstellung – Was wollen wir? Die Darstellungsmethode sollte Möglichst mächtig sein, d.h. möglichst viele Körper darstellen können Möglichst wenig Speicherplatz in Anspruch nehmen Einen Körper eindeutig beschreiben, d.h. jeder Repräsentant beschreibt einen Körper, jeder Körper wird durch einen Repräsentanten beschrieben Möglichst exakt sein, d.h. Annäherungen sollen vermieden oder möglichst exakt sein Thomas Faltermeier

Darstellung – Was wollen wir? Möglichst hohe Effizienz der darauf angewendeten Algorithmen bieten Es gibt zwei wesentliche Schemen Direkte Darstellung Indirekte Darstellung Kanten und Ober- Volumenbeschreibung flächenbeschreibung Thomas Faltermeier

Gliederung Grundlagen Direkte Darstellungsmethoden Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Thomas Faltermeier

Normzellenaufzählungsschema Aufteilung des Raumes in ein Gitter gleich großer dreidimensionaler Zellen, sog. Voxel Je nachdem, ob die Zelle innerhalb oder außerhalb der zu beschreibenden Körpers liegt, wird diese ‚gefüllt‘, vergleichbar mit dem Zusammenbauen des Körpers mit identischen Klötzen Je kleiner die Voxel, desto genauer kann der Körper beschrieben werden Allerdings ist der Speicherbedarf für immer kleinere Voxel sehr hoch Thomas Faltermeier

Normzellenaufzählungsschema Thomas Faltermeier

Octalbäume Mächtig wie die Normzellenaufzählung, jedoch bei deutlich geringerem Speicherbedarf Ausgangspunkt: Würfel, der den gesamten Körper umfasst Der Würfel wird nun so lange rekursiv in Würfel halber Kantenlänge unterteilt, bis sich diese innerhalb oder außerhalb des Körpers befinden(Annäherung), die Kantenlänge der Würfel ist also nicht fest vorgeschrieben Speicherung als Baum mit 8 Verästelungen Effizienz stark vom Testalgorithmus abhängig Thomas Faltermeier

Octalbäume Diese Methode funktioniert auch analog in jeder anderen Dimension Thomas Faltermeier

Constructive Solid Geometry(CSG)‏ Körper wird mit Hilfe von Grundkörpern, sog. Primitiven, erstellt Anwendung der Operationen Speicherung als Binärbaum Nachteil: auch hier sind mehrere Repräsentanten möglich Steigerung der Effizienz: Häufig verwendete Objekte werden zu Primitiven und müssen nicht mehr jedes mal zusammengesetzt werden Thomas Faltermeier

Verschiebungsschema Ausgangspunkt: Fläche im Raum Diese Fläche wird nun entlang eines Pfades bewegt oder um einen bestimmten Punkt gedreht Es entsteht ein Translationskörper, bzw. ein Rotationskörper Bsp.: Ein Kreis der um einen Punkt im Raum rotiert erzeugt einen Ring Thomas Faltermeier

Bsp.: Rotierende Sinuskurve Thomas Faltermeier

Gliederung Grundlagen Direkte Darstellungsmethoden Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Thomas Faltermeier

Drahtmodellschema Körper wird über seine Kanten beschrieben Vorteil: Konstruktion von Körpern ist sehr einfach Nachteil: Eine eindeutige Repräsentation aus dem Drahtmodellschema ist nicht gewährleistet Thomas Faltermeier

Oberflächendarstellung Darstellung des Körpers durch die Beschreibung seiner Oberfläche Zerlegung in eine endliche Menge von Teilflächen Im einfachsten Fall sind nur Polygone zugelassen, die nicht gekrümmt sind – also nur planare Flächen, zusäzlich befindet sich die Verbindungslinie zweier Punkte auf dem Polygon in diesem (keine Löcher in Polygone, keine konkaven Polygone) Rundungen müssen in diesem Fall angenähert werden, je genauer, desto größer wird die Datenmenge Thomas Faltermeier

Oberflächendarstellung ABER: Flächen alleine ergeben noch keinen starren Körper Es müssen folgende Bedingungen erfüllt sein: Geschlossenheit keine Kantenunterbrechungen, keine echten Löcher in Teilflächen(richtiger Durchbruch ist in Ordnung), jede Fläche muss genau so viele Kanten wie Ecken besitzen, jeder Eckpunkt grenzt an die gleiche Menge an Kanten und Flächen an Orientierbarkeit: Beide Seiten einer Fläche müssen unterscheidbar sein {e1, e2, ... , en} sei die Menge aller Kanten Thomas Faltermeier

Oberflächendarstellung Test auf Orientierbarkeit: Orientierung der Kanten gegen den Uhrzeigersinn Ist die Kantenorientierung zweier angrenzender Flächen unterschiedlich wird diese aus der Menge eliminiert Ist die Menge am Ende leer ist die Gesamtoberfläche orientierbar Oberfläche darf sich nicht selbst schneiden Teilflächen dürfen sich nicht selbst schneiden Schnitt zweier Teilflächen nur am Rand Kanten dürfen sich nicht selbst schneiden Zwei Kanten dürfen sich nur an den Enden schneiden Problem: Unterscheidung von hohlen und nicht zusammenhängenden Körpern nicht möglich Thomas Faltermeier

Oberflächendarstellung

Polygon Meshes Nun stellt sich die Frage, wie man diese Polygone abspeichern sollte, es gilt den besten Kompromiss zwischen Laufzeit und Speicherplatzverbrauch zu finden. Explizite Repräsentation Jedes Polygon wird durch seine Eckkoordinaten repräsentiert P = ((x1,y1,z1),...,(xn,yn,zn))‏ Wichtig: Sinnvolles abspeichern der Punkte, damit Kanten gezeichnet werden können, z.B. im/gegen Uhrzeigersinn Nachteil: Bei mehreren Polygonen werden Punkte doppelt gespeichert, gemeinsame Punkte und Kante werden nicht explizit als solche repräsentiert, bei Veränderungen müssen alle Polygone überprüft und geg. verändert werden Daher nur für ein einzelnes Polygon sinnvoll, oder falls keine Operationen mehr ausgeführt werden (auch Faulheit OK) Thomas Faltermeier

Polygon Meshes Pointers to a vertex list Alle Eckpunkte werden in einer Liste gespeichert Polygonecken sind nur Verweise auf diese Liste Vorteil: Platzersparnis, jeder Punkt wird nur einmal gespeichert Einfaches Ändern der Koordinaten möglich ohne weitere Überprüfungen Nachteil: Flächen/Kanten die an einer gemeinsamen Ecke liegen müssen noch aufwändig gesucht werden Thomas Faltermeier

Polygon Meshes Pointer to an edge list Ecken und Kanten werden in einer Liste gespeichert Polygone werden als Verweise auf die Kantenliste repräsentiert Jede Kante in der Liste hat zwei Verweise auf die Ecken, die sie definieren, sowie die Information zu welchen ein/zwei Polygonen sie gehört P = (E1,...,En)‏ E = (V1,V2,P1,P2)‏ V = (x,y,z)‏ Thomas Faltermeier

Polygon Meshes Vorteile: Einfache Abspeicherung Nachteile: Algorithmen können nicht sehr effizient integriert werden, da viele Überprüfungen nötig sind Speicherbedarf höher als nötig Thomas Faltermeier

Polygon Meshes Thomas Faltermeier

Gliederung Grundlagen Direkte Darstellungsmethoden Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Topologie= Nachbarschaftsrelationen Geometrie=Ort der Eckpunkte Thomas Faltermeier

vef-Graph vv V x V :Punkte sind benachbart Die Topologie berücksichtigt die Nachbarschafts- beziehungen von Punkten, Kanten und Flächen V: Menge aller Knoten/Ecken E: Menge aller Kanten F: Menge aller Flächen Müssen alle Relationen gespeichert werden? NEIN vv V x V :Punkte sind benachbart ve V x E :Punkt begrenzt Kante vf V x F :Punkt ist Ecke von Fläche ev E x V :Kante hat Punkt als Ecke ee E x E :Kanten sind benachbart ee‘ E x E :Kanten sind benachbart und begrenzen die selbe Fläche ef E x F :Kante begrenzt Fläche fv F x V :Fläche stößt an Punkt fe F x E :Fläche stößt an Kante ff F x F :Flächen sind benachbart Thomas Faltermeier

Winged-Edge Struktur Speicherung von: ev, ef, ee‘ also Eckpunkte der Kanten Flächen die diese Kanten begrenzen Benachbarte Kanten mit gleicher benachbarter Fläche Zusätzliche Abspeicherung: Knotenliste mit Verweis auf die Kante, die er begrenzt Flächenliste mit Verweis auf eine Kante, die sie begrenzt Alle anderen Relationen lassen sich daraus berechnen Diese Struktur ist dynamisch und somit bei der Implementierung von Algorithmen von Nachteil Thomas Faltermeier

Half-Winged-Edge Struktur Es wird das selbe gespeichert wie bei der Winged-Edge Struktur mit Ausnahme der Relation ee‘ ee‘ wird durch die neue Relation ee‘‘ ersetzt:  Speicherung der Kanten der entsprechenden Flächen, die e im Uhrzeigersinn folgen Bei diesem Beispiel als e2 und e3 Diese Struktur ist nun nicht mehr dynamisch und somit deutlich besser für die Implementierung geeignet Motivation: z.B. Laserscans sind verrauscht, glätten der Meshes verlangt betrachten der Nachbarecken, gute Datenstruktur , teures suchen fällt weg Thomas Faltermeier

Gliederung Grundlagen Direkte Darstellungsmethoden Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Thomas Faltermeier

Hardwarestruktur Hardware verwendet keine Polygone sondern die wesentlich einfacheren Dreiecke, da nur eine begrenzte Anzahl an Rechenregistern zur Verfügung steht Dreieck ist immer planar Polygone müssen daher in solche zerlegt werden Die einfachste Möglichkeit wäre es jedes Dreieck einzeln zu speichern, Nachteile Analog wie bei Meshes Lösung: Triangel Strips und Triangle Fans Dreiecke -> weniger Soderfälle Sonderfälle teuer Thomas Faltermeier

Hardwarestruktur Triangle Strips: Ausgehend von einem Dreieck Jedes neue Dreieck teil sich eine Kante mit dem vorhergehenden Vorteil: Es muss für jedes neue Dreieck nur ein einziger Punkt gespeichert werden Thomas Faltermeier

Hardwarestruktur Triangle Fans: Analog wie bei Strips Allerdings besitzen alle Dreiecke noch einen gemeinsamen Punkt Es entsteht ein Fächer aus Dreiecken Thomas Faltermeier

Gliederung Grundlagen Direkte Darstellungsmethoden Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Thomas Faltermeier

Zusammenfassung Es werden echte Körper dargestellt, da diese feste Eigenschaften besitzen Man stellt diesen entweder direkt oder indirekt dar, wobei jede Methode Vor- und Nachteile hat Nur mit der Darstellung lassen sich Algorithmen nicht effektiv implementieren, es muss die Topologie berücksichtigt werden Egal wie der Körper aufgebaut ist, auf Hardwareniveau muss alles auf Dreiecke zurückgeführt werden Thomas Faltermeier

Danke für die Aufmerksamkeit Ende Danke für die Aufmerksamkeit

Quellen Foley, Van Dam, Feiner, Hughes: Computer Graphics: Principles and Practice, Addison-Wesley, 2nd edition in C Griebel, Bungartz, Zenger: Computer Graphik, Vieweg Verlag http://de.wikipedia.org/wiki/Bild:Rotationskoerper_animatio n.gif , Macks , 24.01.2007 http://en.wikipedia.org/wiki/Image:Dolphin_triangle_mesh.p ng , chrschn , March 27, 2007 http://en.wikipedia.org/wiki/Image:Triangle_Strip.png, holder has irrevocably released all rights http://www.codesampler.com/d3dbook/chapter_05/chapter_ 05_files/image008.jpg, Kevin Harris, 2005 Thomas Faltermeier