Vorlesung April 2000 Polygon Overlay

Slides:



Advertisements
Ähnliche Präsentationen
Punkt-in-Polygon-Verfahren III (R/R+-Baum)
Advertisements

Kap. 13 Sweep-Line Algorithmen Kap Schnittprobleme
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (26-Graphenalgorithmen: Wiederholung und Übung) Prof. Th. Ottmann.
7. Natürliche Binärbäume
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
WS Algorithmentheorie 05 - Treaps Prof. Dr. Th. Ottmann.
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.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Algorithmen und Datenstrukturen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung Foliendesign: cand. geod. Jörg Steinrücken.
Institut für Kartographie und Geoinformation Dipl.-Ing. J. Schmittwilken Diskrete Mathe II Übung
Diskrete Mathe II Übung IKG - Übung Diskrete Mathe II – Jörg Schmittwilken 2 Ü6 Wendet den Scan-Line Algorithmus auf unten stehende Situation.
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
IKG - Übung Diskrete Mathe I – Jörg Schmittwilken
Geoinformation III Vorlesung 3 Quadtrees.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung In welcher Masche liegt der Punkt p?
Diskrete Mathe 9 Vorlesung 9 SS 2001
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 1 SS 2001 Algorithmus von Dijkstra.
Splay Trees Von Projdakov Benjamin.
2. Die rekursive Datenstruktur Baum 2
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation I Vorlesung 5 WS 2000/2001 Topologie, Landkarten, Datenstrukturen.
Effiziente Algorithmen
Datenstrukturen für Landkarten
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 10 SS 2000 Quadtrees.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 8 SS 2000 Punkt-in-Polygon-Verfahren II (Trapezkarte)
Geoinformation II Vorlesung 2 SS 2001 AVL-Bäume.
Geoinformation II Vorlesung 4 SS 2001 Voronoi-Diagramme.
Konstruktion der Voronoi-Diagramme II
Geoinformation II (6. Semester)
Geoinformation II Vorlesung 3 SS 2001 Polygon Overlay.
Diskrete Mathematik II
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 5 SS 2001 Segmentschnitt II (n Segmente)
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
Konstruktion der Voronoi-Diagramme I
1.2 Trennung von Struktur und Inhalt
1.6 Die Datenstruktur Stapel Ein Stapel (Stack) ist ein Sonderfall einer Liste. Die Elemente werden nach dem Prinzip LIFO (Last In First Out) angefügt.
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation III Vorlesung 1 WS 2001/02 Punkt-in-Landkarte I (Streifenkarte)
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
Landkarten Landkarten sind Tesselationen mit folgenden Eigenschaften:
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung April 2000 AVL-Bäume.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Diskrete Mathe II Übung IKG - Übung Diskrete Mathe II – Jörg Schmittwilken 2 Übung5 Prüft, ob sich folgende Segmente schneiden: –P1(1/7) P2(3/1)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 4 WS 01/02 Quadtrees.
Binärer Suchbaum IV AVL-Baum I
„Topologie“ - Wiederholung der letzten Stunde
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Suche des kürzesten Weges in einem Netz.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Voronoi-Diagramme.
Graph – basierte Routenplanung versus Geometrische Routenplanung
Geoinformation II 6. Sem. Vorlesung April 2000 Geometrische Algorithmen - ein einführendes, größeres Beispiel für ein Semester-begleitendes Programmier.
Binärbäume.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 3 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Klausur „Diskrete Mathematik II“
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.
Diskrete Mathematik II
Vorlesung AVL-Bäume/Algorithmen-
Vorlesung AVL-Bäume/Algorithmen-
Gerhard Gröger Proseminar Geoinformation II WS 2003/2004
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.
Punkt-in-Landkarte II
3. Die Datenstruktur Graph 3.1 Einfache Graphen
1. Die rekursive Datenstruktur Liste 1
 Präsentation transkript:

Vorlesung 3 27. April 2000 Polygon Overlay Geoinformation II 6. Sem. Vorlesung 3 27. April 2000 Polygon Overlay

Verwaltung der aktiven Elemente F B S2 S3 C S4 D A S1 E B E C D

AVL-Baum: L-Rotation +2 T1 T2 T3 k1 k2 +1 x

Eine Variante des AVL-Baums mit einer doppelt verketteten Liste der Blätter für die Menge der aktiven Elemente

für die Haltepunkte ... ...mit den Operationen Einfügen eines gefundenen Schnittpunktes Finden und Entfernen des nächsten (also minimalen) Elements ... ... genügt ein „normaler“ AVL-Baum obwohl man mit Kanonen auf Spatzen schießt besser: ein Heap bei Interesse: Vorlesung 2 (heute), Diskrete Mathematik

Overlay von Polygonen (Landkarten) bisher: Overlay von Netzen genügt: Bestimmung der Schnittpunkte bei Polygonen Konstruktion der neuen Polygone

Polygon Overlay Problem: Konstruktion der neuen Flächen A B C

Polygon-Overlay der Schnitt zweier Kanten führt zu vier neun Kanten Problem: Aggregation der neuen Polygone aus den alten und den neuen Kanten Vererbung der Attribute der alten Maschen auf die neuen Maschen Vegetation Niederschlag wichtigsten Teilproblem: Aggregation der Kante Konstruktion einer neuen Verzeigerung zwischen den Kanten

Datenstruktur für Landkarten zur Erinnerung Spaghetti Knoten-Kanten-Strukturen geflügelte Kante Variante: doppelt-geflügelte Doppelkanten twin(e) beachte den Umlaufsinn der Kanten Masche liegt immer links

zur Erinnerung: Datenstrukturen für Landkarten

Spaghetti Flächen: x y A B C A: 2.0 0.0 5.0 1.0 7.0 3.0 5.0 4.0 5.0 1.0 7.0 3.0 5.0 4.0 1.0 1.0 B: 5.0 4.0 7.0 3.0 7.0 6.0 5.0 6.0 C: 5.0 4.0 5.0 7.0 0.0 3.0 x y Spaghetti (5.0 4.0) (5.0 1.0) (2.0 0.0) (7.0 3.0) (1.0 1.0) (7.0 6.0) (5.0 6.0) (5.0 7.0) (0.0 3.0) A B C

Spaghetti 2.0, 5.0 P1 3.0, 6.0 P2 P1 P3 P5 7.0, 2.0 P4 Vorteile: bequem für Flächenberechnung gut für Graphikprogramme Zeichnen von Polygonen Nachteile: Topologie nur implizit fehleranfällig wenig änderungsfreundlich Beispiel: Korrektur von Punktkoordinaten P1 P2 P1 P3 P5 P4

Knoten-Maschen-Struktur Kante End- knoten linke Masche Anfangs- knoten Knoten-Maschen-Struktur P1 E6 E11 P2 P3 P6 P7 P8 P9 A B C P5 P4 E1 E2 E3 E4 E5 E7 E8 E9 E10 Außen rechte Masche E1 P1 P2 A Außen E2 P2 P3 A Außen E3 P3 P4 A B E4 P4 P5 A C E5 P5 P1 A Außen E6 P3 P6 B Außen .............................................. Kanten: Knoten: P1 2.0 0.0 P2 5.0 1.0 ..............................................

Knoten-Maschen-Struktur Kante End- knoten linke Masche Anfangs- knoten P8 rechte Masche Außen E9 Kanten: P7 E7 E1 P1 P2 A Außen E2 P2 P3 A Außen E3 P3 P4 A B E4 P4 P5 A C E5 P5 P1 A Außen E6 P3 P6 B Außen .............................................. E10 P6 E8 B E6 C P4 P9 E3 P3 E4 E11 A E2 P5 P2 E5 E1 Knoten: P1 P1 2.0 0.0 P2 5.0 1.0 ..............................................

Kanten mit Flügeln

Geflügelte Kanten Kanten: Außen B C A P8 E9 E7 P7 P6 E10 E8 E6 Nachfolger im Umring der rechten Masche P8 Vorgänger im Umring der linken Masche Außen E9 P7 E7 P6 E10 Kanten: E8 B E6 E1 P1 P2 A Außen E5 E2 E2 P2 P3 A Außen E1 E6 E3 P3 P4 A B E2 E8 E4 P4 P5 A C E3 E11 E5 P5 P1 A Außen E4 E1 E6 P3 P6 B Außen E3 E7 ..................................................... C P4 E3 P9 E4 P3 E11 A E2 P5 P2 E5 E1 P1

Geflügelte Kanten Kanten: Außen B C A P8 E9 E7 P7 P6 E10 E8 E6 Nachfolger im Umring der rechten Masche P8 Vorgänger im Umring der linken Masche Außen E9 P7 E7 P6 E10 Kanten: E8 B E6 E1 P1 P2 A Außen E5 E2 E2 P2 P3 A Außen E1 E6 E3 P3 P4 A B E2 E8 E4 P4 P5 A C E3 E11 E5 P5 P1 A Außen E4 E1 E6 P3 P6 B Außen E3 E7 ..................................................... C P4 E3 P9 E4 P3 E11 A E2 P5 P2 E5 E1 P1

Geflügelte Kanten Kanten: Außen B C A P8 E9 E7 P7 P6 E10 E8 E6 Nachfolger im Umring der rechten Masche P8 Vorgänger im Umring der linken Masche Außen E9 P7 E7 P6 E10 Kanten: E8 B E6 E1 P1 P2 A Außen E5 E2 E2 P2 P3 A Außen E1 E6 E3 P3 P4 A B E2 E8 E4 P4 P5 A C E3 E11 E5 P5 P1 A Außen E4 E1 E6 P3 P6 B Außen E3 E7 ..................................................... C P4 E3 P9 E4 P3 E11 A E2 P5 P2 E5 E1 P1

Geflügelte Kanten Kanten: Außen B C A P8 E9 E7 P7 P6 E10 E8 E6 Nachfolger im Umring der rechten Masche P8 Vorgänger im Umring der linken Masche Außen E9 P7 E7 P6 E10 Kanten: E8 B E6 E1 P1 P2 A Außen E5 E2 E2 P2 P3 A Außen E1 E6 E3 P3 P4 A B E2 E8 E4 P4 P5 A C E3 E11 E5 P5 P1 A Außen E4 E1 E6 P3 P6 B Außen E3 E7 ..................................................... C P4 E3 P9 E4 P3 E11 A E2 P5 P2 E5 E1 P1

Geflügelte Kanten Kanten: Außen B C A P8 E9 E7 P7 P6 E10 E8 E6 Nachfolger im Umring der rechten Masche P8 Vorgänger im Umring der linken Masche Außen E9 P7 E7 P6 E10 Kanten: E8 B E6 E1 P1 P2 A Außen E5 E2 E2 P2 P3 A Außen E1 E6 E3 P3 P4 A B E2 E8 E4 P4 P5 A C E3 E11 E5 P5 P1 A Außen E4 E1 E6 P3 P6 B Außen E3 E7 ..................................................... C P4 E3 P9 E4 P3 E11 A E2 P5 P2 E5 E1 P1

Datenstruktur für Landkarten zur Erinnerung Spaghetti Knoten-Kanten-Strukturen geflügelte Kante Variante: doppelt-geflügelte Doppelkanten twin(e) beachte den Umlaufsinn der Kanten Masche liegt immer links

Von Kanten zu Halbkanten

Polygon Overlay A C B Problem: Konstruktion der neue Flächen wir beschränken uns hier auf einen schwierigen Sonderfall alle anderen Fälle leiten sich als Vereinfachungen daraus ab A C B

Maschenumring eines Knotens („Umbrella“) IV II III

Problem Konstruktion der neuen Maschen Update der alten Maschen hier: Update der Verzeigerung der Kanten explizite Konstruktion der Maschen ist dann einfach

Der neue Regenschirm I II VI III V IV

Beachte Entstehung zweier neuer Maschen Umring gegeben durch die zu v inzidenten Kanten sowie die Aufteilung von e in e‘ und e‘‘ Problem: Konstruktion und Update der Vorgänger-Nachfolger-Relationen zwischen Kanten Konstruktion zunächst implizit explizite Konstruktion und Attributierung siehe später

Geometrische Situation v

Darstellung der Halbkanten v

Nachfolger und Vorgänger von e

Wo müssen wir etwas tun? am Knoten v an den beiden Endknoten von e neue Maschen konstruieren wie finden wir diese? Umlauf definiert Ordnung Nachbarschaft benachbarte Kanten gehören zur gleichen Masche an den beiden Endknoten von e

Aufteilung von e in e` und e``

Aufteilung von e in e` und e``

Aufteilung von e in e` und e``

Korrektur am Knoten v e`` v e`

Korrektur am Knoten v e`` v e` Erste Halbkante gegen den Uhrzeigersinn von e``mit v als Zielpunkt Erste Halbkante im Uhrzeigersinn von e`` mit v als Ursprung e`` v Erste Halbkante im Uhrzeigersinn von e` mit v als Ursprung Erste Halbkante gegen den Uhrzeigersinn von e` mit v als Zielpunkt e`

Maschenkonstruktion im Prinzip einfach alle Kanten durchlaufen Markierung aller besuchten Kanten liefert Abbruchkriterium Vererbung der Attribute aus den alten Kanten einsammeln

Spezialfall äußere, unbeschränkte Masche Löcher als Übung: Vorgehen am Schnittpunkt zweier Kanten explizite Aufzählung der neuen Maschen und ihrer Attribute Behandlung der unbeschränkten äußeren Masche Behandlung von Löchern