37
Thomas Faltermeier computer graphics & visualization Geometric Representation And Processing

Geometric Representation And Processing

  • Upload
    fedora

  • View
    49

  • Download
    0

Embed Size (px)

DESCRIPTION

Geometric Representation And Processing . Gliederung. Grundlagen Direkte Darstellungsmethoden Indirekte Darstellungsmethoden Topologie Hardwarestruktur Zusammenfassung. Grundlagen. Geometrische Repräsentation ist die Darstellung eines ‚Körpers‘ am Computer durch mathematische Modelle - PowerPoint PPT Presentation

Citation preview

Page 1: Geometric Representation And Processing

Thomas Faltermeier

computer graphics & visualization

Geometric Representation And Processing

Page 2: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Gliederung- Grundlagen

- Direkte Darstellungsmethoden

- Indirekte Darstellungsmethoden

- Topologie

- Hardwarestruktur

- Zusammenfassung

Page 3: Geometric Representation And Processing

computer graphics & visualization

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)

Page 4: Geometric Representation And Processing

computer graphics & visualization

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

Page 5: Geometric Representation And Processing

computer graphics & visualization

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

Page 6: Geometric Representation And Processing

computer graphics & visualization

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- Volumenbeschreibungflächenbeschreibung

Page 7: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Gliederung- Grundlagen

- Direkte Darstellungsmethoden

- Indirekte Darstellungsmethoden

- Topologie

- Hardwarestruktur

- Zusammenfassung

Page 8: Geometric Representation And Processing

computer graphics & visualization

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

Page 9: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Normzellenaufzählungsschema

Page 10: Geometric Representation And Processing

computer graphics & visualization

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

Page 11: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

OctalbäumeDiese Methode funktioniert auch analog in jeder anderen Dimension

Page 12: Geometric Representation And Processing

computer graphics & visualization

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

/,,

Page 13: Geometric Representation And Processing

computer graphics & visualization

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

Page 14: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Bsp.: Rotierende Sinuskurve

Page 15: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Gliederung- Grundlagen

- Direkte Darstellungsmethoden

- Indirekte Darstellungsmethoden

- Topologie

- Hardwarestruktur

- Zusammenfassung

Page 16: Geometric Representation And Processing

computer graphics & visualization

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

Page 17: Geometric Representation And Processing

computer graphics & visualization

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

Page 18: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

OberflächendarstellungABER: Flächen alleine ergeben noch keinen starren KörperEs 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

Page 19: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

OberflächendarstellungTest 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

Page 20: Geometric Representation And Processing

computer graphics & visualization

Oberflächendarstellung

Page 21: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Polygon MeshesNun 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)

Page 22: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Polygon MeshesPointers 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 gespeichertEinfaches Ä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

Page 23: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Polygon MeshesPointer 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)

Page 24: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Polygon MeshesVorteile:

Einfache Abspeicherung

Nachteile:Algorithmen können nicht sehr effizient integriert werden, da viele Überprüfungen nötig sindSpeicherbedarf höher als nötig

Page 25: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Polygon Meshes

Page 26: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Gliederung- Grundlagen

- Direkte Darstellungsmethoden

- Indirekte Darstellungsmethoden

- Topologie

- Hardwarestruktur

- Zusammenfassung

Page 27: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

vef-GraphDie Topologie

berücksichtigt die Nachbarschafts- beziehungen von Punkten, Kanten und Flächen

V: Menge aller Knoten/Ecken

E: Menge aller KantenF: Menge aller Flächen

Müssen alle Relationen gespeichert werden?

NEIN

vv V x V :Punkte sind benachbart

ve V x E :Punkt begrenzt Kantevf V x F :Punkt ist Ecke von

Flächeev E x V :Kante hat Punkt als

Eckeee E x E :Kanten sind

benachbartee‘ E x E :Kanten sind

benachbart und begrenzen die selbe Fläche

ef E x F :Kante begrenzt Flächefv F x V :Fläche stößt an Punktfe F x E :Fläche stößt an Kanteff F x F :Flächen sind

benachbart

Page 28: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Winged-Edge Struktur- Speicherung von: ev, ef, ee‘ also

Eckpunkte der KantenFlächen die diese Kanten begrenzenBenachbarte 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

Page 29: Geometric Representation And Processing

computer graphics & visualization

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 folgenBei diesem Beispiel als e2 und e3

- Diese Struktur ist nun nicht mehr dynamisch und somit deutlich besser für die Implementierunggeeignet

Page 30: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Gliederung- Grundlagen

- Direkte Darstellungsmethoden

- Indirekte Darstellungsmethoden

- Topologie

- Hardwarestruktur

- Zusammenfassung

Page 31: Geometric Representation And Processing

computer graphics & visualization

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

Page 32: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

HardwarestrukturTriangle 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

Page 33: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

HardwarestrukturTriangle Fans:- Analog wie bei Strips- Allerdings besitzen alle Dreiecke noch einen gemeinsamen

Punkt- Es entsteht ein Fächer aus Dreiecken

Page 34: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

Gliederung- Grundlagen

- Direkte Darstellungsmethoden

- Indirekte Darstellungsmethoden

- Topologie

- Hardwarestruktur

- Zusammenfassung

Page 35: Geometric Representation And Processing

computer graphics & visualization

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

Page 36: Geometric Representation And Processing

computer graphics & visualization

EndeDanke für die Aufmerksamkeit

Page 37: Geometric Representation And Processing

computer graphics & visualization

Thomas Faltermeier

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_animation.gif , Macks , 24.01.2007 - http://en.wikipedia.org/wiki/

Image:Dolphin_triangle_mesh.png , 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