Geometrien vereinfachen (Generalisierung)


22

Was sind die empfohlenen Möglichkeiten zur Vereinfachung von Geometrien? Denken Sie beispielsweise an Projektionen und vereinfachen Sie Zustandsgeometrien.

Ich habe von der Konvertierung in eine "gleich weit entfernte" Projektion gehört, die eine Vereinfachung ohne Verzerrung ermöglicht und dann wieder in die von Ihnen gewählte Projektion konvertiert.


4
Ich bin nicht sicher, aber "Verallgemeinerung" könnte ein aussagekräftigeres Schlagwort dafür sein. Zumindest im ArcGIS-Kontext ist Simplify eine Methode zur Sicherstellung der topologischen Korrektheit. Laut Wikipedia ist Vereinfachung Teil der kartografischen Generalisierung. en.wikipedia.org/wiki/Cartographic_generalization
Kirk Kuykendall

Toller Vorschlag @ Kirk
John Weldon

Antworten:


11

Wie von glennon erwähnt, ist Douglas-Peucker der Standardalgorithmus, der in Software wie PostGIS (dh GEOS) via St_Simplify, ArcGIS via Generalizeund GRASS via verwendet wird v.generalize. Der Wikipedia-Artikel verweist auch auf eine Python-Implementierung .

GRASS unterstützt eine Reihe verschiedener Algorithmen, wie auf der Hilfeseite für v.generalize erläutert .

Was die Projektion betrifft, denke ich, dass es sich in diesem Fall um einen roten Hering handelt, der ignoriert werden kann. Das einzige Problem, das mir in den Sinn kommt, ist die potenzielle Verdichtung von Linien, um zu verhindern, dass sie zu stark vereinfacht werden.



3

Wenn Sie mit "Vereinfachung" eine einfache Reduzierung der Punktzahl meinen, verwenden Sie einen grundlegenden Filteralgorithmus wie den Douglass-Peucker-Filter. Ein nützlicher Link dafür: http://mapshaper.org/

Wenn mit "Vereinfachung" eine einfachere Form gemeint ist, sind Filteralgorithmen nicht immer geeignet. Es sollten fortgeschrittenere Generalisierungsalgorithmen verwendet werden. Einige Dokumente zu solchen Algorithmen sind dort zu finden: http://generalisation.icaci.org/ , mit einigen Beispielen für Ergebnisse: http://generalisation.icaci.org/index.php/results . Nur wenige dieser Algorithmen sind in der gängigen kommerziellen GIS-Software implementiert. Auf einige kann über diese Adresse zugegriffen werden: http://webgen.geo.uzh.ch/


die seiten aci.ign.fr sind nicht zugänglich. Wissen Sie, wo wir Beispiele für den von Ihnen erwähnten "erweiterten Generalisierungsalgorithmus" finden können?
Radouxju

Die URL hat sich geändert,
siehe

2

Wenn Sie die Geometrie aufgrund von Einschränkungen bei der Rechenleistung des Computers vereinfachen, können Sie Mipmaps mit zugeordneten Alphamasken für jede Geometrie auf verschiedenen Ebenen erstellen .


Sehr interessant, wären Sie bereit, näher darauf einzugehen?
John Weldon

Dazu müssten Sie jede Vektorgeometrie in eine Bitmap für jede Ebene rastern, auf die Benutzer die Karte vergrößern und verkleinern können. Anstatt die Vektorgeometrie für jede Ebene immer wieder zu zeichnen, rendern Sie stattdessen einfach die Bitmap. Die Berechnung zur Rasterung der Geometrie (die bei einer Vielzahl von Scheitelpunkten teuer ist) erfolgt also im Voraus, anstatt jedes Mal, wenn der Benutzer eine Aktion ausführt. Die Alphamaske wird beim Zeichnen der Bitmap in das Bild eingefügt. Sie wird verwendet, damit nur die Form selbst gezeichnet wird.
Jon Bringhurst

1

Dies ist ein schwieriges Thema, da Sie eine bestimmte Auflösung Ihres Datensatzes berücksichtigen müssen. Wann ist ein Geometrie-Vertex gleich einem anderen Vertex? Ich habe noch nie von Konvertieren und erneutem Konvertieren gehört, obwohl es ein interessanter Test wäre.

Einfache Geometrien sind nach OGC Geometrien, die sich nicht selbst schneiden, und im Fall von Polygonen Geometrien, die korrekt ausgerichtet sind, für Außenschale (n) und Innenschale (n) und anschließend.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.