Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Geometric Representation And Processing

Ähnliche Präsentationen


Präsentation zum Thema: "Geometric Representation And Processing"—  Präsentation transkript:

1 Geometric Representation And Processing

2 Gliederung Grundlagen Direkte Darstellungsmethoden
Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Thomas Faltermeier

3 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

4 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

5 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

6 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

7 Gliederung Grundlagen Direkte Darstellungsmethoden
Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Thomas Faltermeier

8 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

9 Normzellenaufzählungsschema
Thomas Faltermeier

10 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

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

12 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

13 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

14 Bsp.: Rotierende Sinuskurve
Thomas Faltermeier

15 Gliederung Grundlagen Direkte Darstellungsmethoden
Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Thomas Faltermeier

16 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

17 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

18 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

19 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

20 Oberflächendarstellung

21 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

22 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

23 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

24 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

25 Polygon Meshes Thomas Faltermeier

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

27 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

28 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

29 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

30 Gliederung Grundlagen Direkte Darstellungsmethoden
Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Thomas Faltermeier

31 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

32 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

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

34 Gliederung Grundlagen Direkte Darstellungsmethoden
Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung Thomas Faltermeier

35 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

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

37 Quellen Foley, Van Dam, Feiner, Hughes: Computer Graphics: Principles and Practice, Addison-Wesley, 2nd edition in C Griebel, Bungartz, Zenger: Computer Graphik, Vieweg Verlag n.gif , Macks , ng , chrschn , March 27, 2007 holder has irrevocably released all rights 05_files/image008.jpg, Kevin Harris, 2005 Thomas Faltermeier


Herunterladen ppt "Geometric Representation And Processing"

Ähnliche Präsentationen


Google-Anzeigen