Geometric Representation

Slides:



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

Polynomial Root Isolation
Computer graphics & visualization Procedural Terrain Generation Hager Simon Proseminar Gamedesign.
Kapitel 6: Klassifizierung von Sortiertechniken
7. Natürliche Binärbäume
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
Digitalgeometrie mit Anwendungen zur Bildanalyse und Computergrafik
Kapitel 4 Datenstrukturen
Kollisionen erkennen Kollisions- und Schnittpunkttests auf Dreieckbasis Kollisions- und Schnittpunkttests auf Viereckbasis Einsatz von achsenausgerichteten.
Kombinatorische Topologie in der 3d Geomodellierung
Sortierverfahren Richard Göbel.
Polymorphie (Vielgestaltigkeit)
Polymorphie (Vielgestaltigkeit)
WS Algorithmentheorie 05 - Treaps Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Bäume: Grundlagen und natürliche Suchbäume) Prof. Th. Ottmann.
Algorithmen und Datenstrukturen
Seminar zur Geoinformation
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 Dipl.-Ing. J. Schmittwilken Diskrete Mathe II Übung
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung In welcher Masche liegt der Punkt p?
EXCAVE ein 3D-Modell eines archäologischen Grabungsquadranten
FH-Hof Algorithmen und Datenstrukturen - Einführung Richard Göbel.
Tetraederzerlegung Ina Ehmann Tetraederzerlegung.
FHP - Fachbereich Bauingenieurwesen
Computergraphik mit OpenGL Einführung. Bilder Objekt existiert im Raum unabhängig vom Betrachter Objekte sind beschrieben durch die Position verschiedener.
Seminarvortrag: Flächenfraktale
2. Die rekursive Datenstruktur Baum 2
Geometric Representation And Processing
4.1 Motivation Es existieren verschiedenste Einflussfaktoren auf die verwendete Modellierungsmethode und Objektrepräsentation: - Objekt existiert real.
6. Lange Nacht der Mathematik
Geometrische Netze Erstellung.
Datenstrukturen für Landkarten
Import und Verknüpfung von Daten
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
§3 Allgemeine lineare Gleichungssysteme
Polynome und schnelle Fourier-Transformation
Geometrie : Rekonstruktion
Medizinische Visualisierung
Allgemeines zu Datenbanken
Objekte und ihre Beschreibung
Algorithmen und Datenstrukturen Übungsmodul 8
Petrinetze 1. Einführung Informatik : wesentlich Modellierung von
Polymorphie (Vielgestaltigkeit). Wenn eine Methode, wie z.B. print für verschiedene Programmteile steht (und z.B. einmal Objekte verschiedener Klassen.
Landkarten Landkarten sind Tesselationen mit folgenden Eigenschaften:
Algorithmische Probleme in Funknetzwerken IV
Neuer Abschnitt: Modellierung des Raumes
Vorlesung Einführendes Beispiel-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 4 WS 01/02 Quadtrees.
Constraint Delaunay Triangulations
Visualisierung von Geodaten
Routenplanung querfeldein - Geometric Route Planning
„Topologie“ - Wiederholung der letzten Stunde
Geoinformation III Vorlesung 10c Normen und Standards.
Einführendes Beispiel
Datenaustausch und Interoperabilität
Geographische Beschreibungssprache
Musterlösung zur Klausur „Geoinformation I“ vom
Fachhochschule Dortmund University of Applied Sciences Frédéric Naujokat Snakes on Triangle Meshes Wissenschaftliches Kolloquim 2 Frédéric Naujokat.
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren.
Binärbäume.
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.
3D-Modellierung mit den offenen Standards des OGC und der ISO
Vorlesung April 2000 Polygon Overlay
Straße * besteht aus Flurstück 1 Masche 2 begrenzt 3..* Kante 2 2..* begrenzt Lösung der Aufgabe 1: Die Ergänzung (grau) des Diagramms besteht.
2. Die rekursive Datenstruktur Baum 2.1 Von der Liste zum Baum
 Präsentation transkript:

Geometric Representation Wintersemester 2005/06 27.10.2005

Gliederung Grundlagen: Geometric Representation Direkte Darstellungsschemata Indirekte Darstellungsschemata Topologische Struktur Datenstrukturen in der Hardware

Definition: Geometric Representation Geometric Representation ist die Darstellung von 3D Objekten durch mathematische (bzw. „informatische“) Modelle am Computer. Dargestellt werden reale oder virtuelle Objekt Legt die Grundlage für: Berechnung geometrischer Eigenschaften (Volumen,…) Graphische Darstellung Weitergehende Graphische Anwendungen (Spiegelungseffekte, Schattierung, usw.) Berechnung des physikalisch-geometrischen Verhaltens der Körper nach einer weiteren Attributierung der Körper mit physikalischen Eigenschaften bzw. Materialparameter

Definition Solid („starre Körper“) Durchgehende Oberfläche, die den Raum teilt: in das Innere, die Oberfläche selbst, das Äußere Translations und rotationsinvariant Echt dreidimensionale Strukturen Keine isolierten Punkte Keine isolierten oder baumelnden Kanten und Flächen

Ziele bei der Wahl eines Schemas Darstellung = Solid Es sollte entweder leicht zu überprüfen sein, ob die Darstellung ein Solid ist, oder generell unmöglich kein Solid zu implementieren. Exaktheit Bei Komplexen Strukturen sind nur Annäherungen möglich. Kompaktheit Die Beschreibung sollte möglichst wenig Speicherplatz benötigen.

Ziele bei der Wahl eines Schemas Mächtigkeit Das Darstellungsschema soll möglichst viele Körper darstellen können. Eindeutige Abbildung Kein Repräsentant soll zwei Körper beschreiben Kein Körper soll durch zwei Repräsentanten beschrieben werden. Effizienz Die Algorithmen sollten möglichst wenig Rechnerleistung beanspruchen

Gliederung Grundlagen: Geometric Representation Direkte Darstellungsschemata Indirekte Darstellungsschemata Topologische Struktur Datenstrukturen in der Hardware

Normzellen-Aufzählungsschema Raum wird in ein Gitter gleichgroßer Zellen aufgeteilt: Geleichgroße Zellen: Voxel (volume elements; analog zu Pixel) Meist Würfel der Kantenlänge h

Normzellen-Aufzählungsschema Anders als bei Pixel werden keine Farbinformationen gespeichert sondern ob der Würfel innerhalb des Körpers ist Effizienter Test: Ist ein Punkt innerhalb oder außerhalb? Erreichbare Genauigkeit ist abhängig von Würfelkante h Bei kleinem h: sehr genau Problem: hoher Speicherbedarf

Oktalbäume (Octrees) Vermeidet den enormen Speicherplatz des Aufzählungsschemas Wahl eines ausreichend großen den Körper umschließenden Würfels. Unterteilung des Würfels in vier Würfel der halben Kantenlänge bis der jeweilige Würfel ganz: Innerhalb (in) oder Außerhalb (off) des zu beschreibenden Körpers ist, oder bis die gewünschte Tiefe (Genauigkeit) erreicht ist: auf der Oberfläche (on) Datenstruktur: Baum

Oktalbäume (Octrees) Analog zu Octrees, gibt es für Flächen Quadtrees:

CSG-Schema (Constructive Solid Geometrie) Auf vorgegebene Grundkörper (Primitive) Werden die Mengenoperationen *, *,  * angewendet. Speicherung: Binärbaum, Knoten sind Mengenoperationen Blätter sind die Primitiven Besonders für interaktive Programme geeignet Problem: Nicht eindeutig darstellbar

CSG-Schema (Constructive Solid Geometrie)

Gliederung Grundlagen: Geometric Representation Direkte Darstellungsschemata Indirekte Darstellungsschemata Topologische Struktur Datenstrukturen in der Hardware

Drahtmodellschema Definition des Körpers über seine Kanten Kanten können gerade oder gekrümmt sein Sehr einfache Realisierung Nachteil: Mehrdeutigkeit

Oberflächendarstellung Körper wird über seine Oberfläche dargestellt: Aufteilung in eine endliche Zahl von Einzelflächen Passendes Schema muss gefunden werden: Einzelflächen können Polygone sein Einzelflächen können gekrümmt sein Sehr mächtiges Schema, wenn gekrümmte Flächen zugelassen sind Problem: Zusätzliche Informationen müssen gespeichert werden Bei Polygonen: Um Kurven anzunähern sind viele Polygone notwendig Problem: Speicherplatz

Voraussetzungen für Solids Oberflächendarstellungen sind nicht immer Solids, es müssen drei weitere Voraussetzungen erfüllt sein: Oberfläche des Körpers muss geschlossen sein d.h. sie darf keine Löcher haben (erlaubt sind Löcher die durch den ganzen Körper hindurchgehen) Die Oberfläche muss orientierbar sein d.h. bei jeder Teilfläche muss eindeutig festgelegt werden, welche Seite auf der Innenseite des Körpers ist und welche auf der Außenseite.

Voraussetzungen für Solids Die Oberfläche darf sich nicht selbst schneiden. Dieses Kriterium ist nur erfüllt, wenn vier Unterkriterien zutreffen: Jede einzelne Teilfläche darf sich nicht schneiden Je zwei Teilflächen dürfen sich nur an ihrem Rand nicht in ihrem Inneren schneiden Eine Kante darf sich nicht selbst schneiden Kanten dürfen sich nur an ihren Eckpunkten schneiden

Polygon Meshes Explicit Representation Jedes Polygon wird über die Koordinaten seiner Eckpunkte (Knoten) gespeichert Reihenfolge der Knoten: Wie beim Zeichnen Am besten immer im Uhrzeigersinn P = ((x1,y1,z1),…,(xn,yn,zn)) Sinnvoll bei einem Polygon Problem bei Polygon Meshes: Redundanz

Polygon Meshes Pointers to a vertex list Knoten werden in einer Liste gespeichert (vertex list) Ecken des Polygons werden als Zeiger auf die vertex list gespeichert Pointers to an edge list Kanten werden in einer Liste gespeichert (edge list) Kanten des Polygon werden als Zeiger auf die edge list gespeichert Eckpunkte der Kanten werden als Zeiger auf die vertex list gespeichert

Gliederung Grundlagen: Geometric Representation Direkte Darstellungsschemata Indirekte Darstellungsschemata Topologische Struktur Datenstrukturen in der Hardware

Polygon Meshes – Topologische Struktur Mithilfe der letzten drei Schemata ist die Speicherung von dreidimensionalen Objekten relativ einfach Problem: Algorithmen können nicht effizient ausgeführt werden Lösung: Topologische Struktur Das Darstellungsschema muss so beschaffen sein, dass die Beziehungen zwischen den Knoten (Vertex = V), Kanten (Edge = E) und Flächen (Face = F) berücksichtigt werden

Winged-Edge-Datenstruktur Gespeicherte Relationen für Kanten: Die Eckpunkte jeder Kante Die Flächen an die die Kante stößt Für jede Kante die vier benachbarten Kanten mit denen die Kante eine gemeinsame Fläche besitzt Punktliste, pro Punkt eine Kante die er begrenzt Flächenliste, pro Fläche eine Kante an die sie stößt

Winged-Edge-Datenstruktur

Half-Winged-Edge-Datenstruktur Basiert auf der Winged-Edge-Datenstruktur Änderung: Es werden nicht alle benachbarten Kanten gespeichert, die eine gemeinsame Fläche mit E haben Es werden nur die zwei Ecken gespeichert die in Bezug auf die gemeinsame Fläche im Uhrzeigersinn zu der Kante e stehen In diesem Fall also e2 und e3

Gliederung Grundlagen: Geometric Representation Direkte Darstellungsschemata Indirekte Darstellungsschemata Topologische Struktur Datenstrukturen in der Hardware

Datenstrukturen in der Hardware Datenschemata in der Hardware: Polygon Meshes Aber: es werden nur Dreiecke verwendet Mögliche Datenstrukturen: Triangle Lists Alle Dreiecke werden explizit abgespeichert Problem: hoher Speicherbedarf Triangle Strips Triangle Fans

Triangle Strips Das erste Dreieck wird vollständig gespeichert Alle weiteren Dreiecke teilen sich mit dem vorhergehenden Dreieck eine Kante Es muss jeweils nur ein weiterer Punkt gespeichert werden Rotation des ersten Dreiecks wird festgelegt, nachfolgende Dreiecke besitzen gegenläufige Rotation Die Triangle Strips werden aneinandergehängt um ein Objekt darzustellen

Triangle Fans Das erste Dreieck wird vollständig gespeichert Alle weiteren Dreiecke teilen sich mit dem vorhergehenden Dreieck eine Kante Es muss jeweils nur ein weiterer Punkt gespeichert werden Rotation des ersten Dreiecks wird festgelegt, nachfolgende Dreiecke besitzen die gleiche Rotation Alle Dreiecke besitzen einen gemeinsamen Punkt