Verstehen Sie den Unterschied zwischen Polygon und Multipolygon für Shapefiles in QGIS?

30

Beim Erstellen der Scratch-Ebene habe ich die Wahl zwischen Polygon und Multipolygon. Daher habe ich mich gefragt, wie ich sie verwenden soll.

Neue temporäre Scratch-Ebene

Als er ein neues Buch "Mastering QGIS" las (durch diese Antwort von Joseph auf Was bedeutet Puffer im QGIS-Voronoi-Dialog? ), War der Kommentar der Autoren"ESRI shapefiles store geospatial data in multi- type geometry, so using multi- type geometry is a good practice if you plan on converting between formats."

Wie soll ich eines davon (Polygon oder Multipolygon) auswählen, wenn ich eine neue Polygonebene erstelle? (Ich hatte Multi-Polygon mit Multipart-Polygon verwechselt, also habe ich Polygon gewählt.)

Eine neue Situation, in der ich Polygon / Multipolygon gewählt habe, war Ändern der parallelen Linienlänge, um das Polygon in QGIS zu teilen. in dem ich ein Dummy-Polygon als Hintergrundebene zeichne. Da ich hauptsächlich an Shapefiles arbeitete, sollte ich wohl Multipolygon wählen, obwohl ich nur ein Polygon brauchte. In diesem Fall brauchte ich eine einfache Polygongeometrie ohne Attribute (Ich bin mir nicht sicher, ob dieses Beispiel einen Unterschied macht.)

Kazuhito
quelle
Sie haben nicht genügend Informationen angegeben, um eine Auswahl treffen zu können. Bitte bearbeiten , die Frage zu geben , was die Kratzschicht ist darauf zurückzuführen , enthält. Beachten Sie, dass das Buch irreführend ist, da Shapefiles keine Geometrien mit mehreren Typen speichern. Stattdessen unterscheiden sie einfach nicht zwischen ein- und mehrteiligen Linien oder Polygonen.
Vince
@Vince Danke. Ich habe kürzlich eine Erfahrung hinzugefügt, bei der ich eine davon auswählen musste. Ich bin mir nicht sicher, ob dieses vereinfachte Beispiel Sinn macht.
Kazuhito
@Vince Was den letzten Teil Ihres Kommentars betrifft, muss ich mir keine Gedanken über Single- oder Multi-Layer machen, um die Ebene als Shapefile auf der Festplatte zu speichern?
Kazuhito

Antworten:

36

Aus formaler Sicht gebe ich die Definition sowohl für ein Polygon als auch für ein Multipolygon an (der folgende Text und die folgenden Bilder stammen aus diesem Dokument der OGC®-Standards , alle Quellenangaben).


Polygon

Ein Polygon ist eine ebene Fläche, die durch 1 Außengrenze und 0 oder mehr Innengrenzen definiert ist. Jede innere Begrenzung definiert ein Loch im Polygon.

Die äußere Begrenzung LinearRing definiert die „Oberseite“ der Oberfläche, die die Seite der Oberfläche ist, von der aus die äußere Begrenzung die Begrenzung im Gegenuhrzeigersinn zu durchqueren scheint. Die inneren LinearRings haben die entgegengesetzte Ausrichtung und werden von oben gesehen im Uhrzeigersinn angezeigt.

Die Zusicherungen für Polygone (die Regeln, die gültige Polygone definieren) lauten wie folgt:

  1. Polygone sind topologisch geschlossen;
  2. Die Grenze eines Polygons besteht aus einer Reihe von LinearRings, die die äußeren und inneren Grenzen bilden.
  3. Keine zwei Ringe im Grenzkreuz und die Ringe in der Grenze eines Polygons dürfen sich an einem Punkt schneiden, sondern nur als Tangente.
  4. Ein Polygon darf keine Schnittlinien, Stacheln oder Einstiche aufweisen.
  5. Das Innere eines jeden Polygons ist eine zusammenhängende Punktmenge.
  6. Das Äußere eines Polygons mit 1 oder mehr Löchern ist nicht verbunden. Jedes Loch definiert eine verbundene Komponente des Äußeren.

Nachfolgend einige Beispiele für Polygone:

Bildbeschreibung hier eingeben


Multipolygon

Ein MultiPolygon ist eine MultiSurface, deren Elemente Polygone sind.

Die Aussagen für MultiPolygons lauten wie folgt:

  1. Die Innenräume von 2 Polygonen, die Elemente eines MultiPolygons sind, kreuzen sich möglicherweise nicht.
  2. Die Grenzen von 2 Polygonen, die Elemente eines MultiPolygons sind, dürfen sich nicht „kreuzen“ und sich nur an einer begrenzten Anzahl von Punkten berühren.
  3. Ein MultiPolygon ist als topologisch geschlossen definiert.
  4. Ein MultiPolygon verfügt möglicherweise nicht über Schnittlinien, Stacheln oder Einstiche. Ein MultiPolygon ist eine reguläre geschlossene Punktmenge.
  5. Das Innere eines MultiPolygons mit mehr als 1 Polygon ist nicht verbunden. Die Anzahl der verbundenen Komponenten im Inneren eines MultiPolygons entspricht der Anzahl der Polygone im MultiPolygon

Die Grenze eines MultiPolygons ist eine Menge geschlossener Kurven (LineStrings), die den Grenzen seines Elements Polygons entsprechen. Jede Kurve in der Grenze des MultiPolygons befindet sich in der Grenze von genau 1 Elementpolygon, und jede Kurve in der Grenze eines Elementpolygons befindet sich in der Grenze des MultiPolygons.

Nachfolgend einige Beispiele für MultiPolygons:

Bildbeschreibung hier eingeben

mgri
quelle
+1 Vielen Dank! Es ist so hilfreich. Es muss lange gedauert haben, sie in einem so prägnanten Stil zusammenzufassen. Ich kann mir nicht vorstellen, wie ich das machen könnte. Es scheint also eine Sammlung von Polygonen, eine Reihe von Oberflächen zu sein, die von einer ziemlich losen Richtlinie in unterstützt wird Topologie (nur mein erster Eindruck). Ich werde verlinktes Material lesen und erneut lesen, es ist sehr interessant!
Kazuhito
Ich denke, Sie müssen über ein Multipolygon aus geometrischer Sicht nachdenken. Ich sehe den deutlichsten Unterschied darin, dass Sie ausgehend von einer beliebigen Position auf der Polygonoberfläche eine beliebige andere Position auf der Polygonoberfläche erreichen können, während ein Multipolygon nicht immer zutrifft (siehe als Referenz die letzten Beispiele für beide Kategorien in den oben angehängten Bildern ).
Mi
Verstanden, danke. Ja, einzelne zusammenhängende Geometrie oder nicht, das macht einen großen Unterschied. Die einzige Frage, mit der ich noch zu kämpfen habe, ist, wie wir ein mehrteiliges Objekt in Bezug auf diese Unterscheidung platzieren.
Kazuhito
1
Warum gehört das erste MultiPolygon-Beispiel dort hin?
Stijn
1
@Stijn Das erste Beispiel ist ein Multipolygon, da in einigen Fällen zwei Punkte innerhalb des Polygons durch eine Linie verbunden sein können, die nicht vollständig im Polygon selbst enthalten ist. Dieses Verhalten ist für ein Polygon nicht zulässig, daher handelt es sich um ein Multipolygon.
Mi
13

Shapefile-Polygone bestehen aus einem oder mehreren geschlossenen Ringen. Wenn eine Form mehrere Ringe hat, können sie außen und innen sein (z. B. einen Ring bilden) oder mehrere außen (z. B. eine Inselkette). Bildbeschreibung hier eingeben

Wenn Sie mehrere Außenseiten haben, können Sie natürlich auch einen oder mehrere Innenringe für jede Form verwenden. Die Shapefile-Spezifikation besagt Folgendes:

  1. Außenringe müssen im Uhrzeigersinn sein, während Innenringe gegen den Uhrzeigersinn sein müssen (diese Konvention wird als Rechtsregel bezeichnet, da sich die Form immer auf der rechten Seite befindet, wenn Sie über den Umfang gehen; leider kann sie auch als bezeichnet werden Regel der linken Hand , da die äußeren Ringe der Richtung einer gekräuselten linken Hand folgen, wobei der Daumen von der Oberseite der Figur nach oben zeigt.
  2. Innenringe müssen immer dem Außenring folgen, den sie unterteilen
  3. Weder Außen- oder Innenringe können sich überlappen oder eine gemeinsame Grenze haben (solche Merkmale können werden bevölkert, aber sie sind ungültig und kann dazu führen , seltsame Geoprocessing Ausfälle).

Shapefiles unterscheiden nicht zwischen diesen Objekten - sie sind alle Polygone (und jede Geometrie ist einem dBase-Datensatz zugeordnet).

Doch einige Werkzeuge tun einen Unterschied machen, QGIS ist einer von ihnen. Wenn alles , was Sie jemals in einer Shape - Datei ist einfach haben einen Ring formen, dann können Sie sicher Polygon wählen. Wenn die Formen "Löcher" enthalten können , ist es auch sicher, Polygon zu wählen. Wenn jedoch einige Formen mehrere äußere Ringe enthalten können , müssen Sie Multipolygon auswählen.

Vince
quelle
1
Dies ist eine großartige detaillierte Zusammenfassung über Shapefile. Vielen Dank! Ich verstehe jetzt, dass der größte Teil meiner bisherigen Erfahrung in die Verwendung von Polygon fällt. In Zukunft werde ich Multipolygon verwenden, um Löcher zu digitalisieren, so etwas wie Seen. Danke nochmal!
Kazuhito
1
Vielen Dank, dass Sie eine Zahl hinzugefügt haben. Der rechte Ring ist also der mehrfache äußere Ring, für den ich Multipolygon wählen muss ... nicht der in der Mitte mit dem Loch!
Kazuhito
3
Ich muss zurückgehen und sie beschriften, aber ja, das grüne Polygon ist das einzige Multipolygon
Vince
1
Würden diese beiden Ringe im Fall von Two Rings (Multipolygon) denselben Datensatz teilen, wenn wir die Attributtabelle sehen? (dh das Shapefile hat nur einen Datensatz)?
Kazuhito
1
Ja, es ist eine Geometrie in einer Aufzeichnung
Vince