Finden Sie Zentrierlinien aus Polygonen in QGIS?

19

Ich habe mich gefragt, ob es in QGIS eine Möglichkeit gibt, Mittellinien aus Polygonen zu erstellen. Ich habe eine Polygonebene, benötige die Mittellinien aber idealerweise als separate Datei.

Beispiel

Alan Carr
quelle
Ich habe gerade ein Bild der Polygone hochgeladen
Alan Carr
Wo würden im Beispielbild die "Mittellinien" hinfallen? Könnten Sie vielleicht das Bild aktualisieren, das die gewünschten Linien in einer anderen Farbe zeigt?
Simbamangu
Nur direkt in der Mitte aller Polygone. Das Endergebnis, das wir brauchen, wäre, einfach die Länge des Ganzen zu finden (vorausgesetzt, die Polygone waren Linien), so dass es nicht einmal notwendig ist, Mittellinien zu erhalten.
Alan Carr
Das HCMGIS-Plugin behauptet, Polygon-Mittellinien als eine seiner räumlichen Verarbeitungsfunktionen zu erstellen. Für mich hat es nicht sehr gut funktioniert, aber es könnte einen Versuch wert sein.
Csk

Antworten:

10

Ich habe an der Implementierung des Modells gearbeitet, das in @ RajGovinds Antwort zur Erstellung von Zentrallinien aus Straßenpolygonen / -gehäusen dargestellt ist. Das kommt dem sehr nahe, was @geogeek in seiner Antwort hier in diesem Thread beschrieben hat.

Sie können das Modell von Github unter https://raw.githubusercontent.com/anitagraser/QGIS-Processing-tools/master/2.12/models/polygon_to_centerline.model herunterladen

Bildbeschreibung hier eingeben

Underdunkel
quelle
Ich habe dieses Modell ausprobiert und es funktioniert, aber ich war nicht in der Lage, auf einfache Weise die langen Mittellinien beizubehalten, aber die kleinen Seitenlinien zu entfernen, da jede der Seitenlinien aus vielen kleineren Features zusammengesetzt ist Die Hauptmittellinie besteht auch aus vielen kleineren Linienmerkmalen.
Jan
@Jan, bitte poste diese Folgefrage in einem neuen Thread, damit mehr Leute sie sehen können.
Underdunkel
9

Sie können diesen Algorithmus ausprobieren:

get vertices from the polygons(poly_vertex).
-make voronoi using (poly_vertex) as input the result could be called(poly_voronoi).
-get lines from (poly_voronoi) => (poly_voronoi_lines).
-get the originale polygon contour (polygon_lines).
-remove (poly_voronoi_lines) touching  (polygon_lines) the result is supposed to be the center lines , but you may need further clean up.

Ich weiß nicht, wie es auf QGIS implementiert werden könnte

Ich wünschte, es könnte helfen

Geogeek
quelle
Mit welchen anderen Programmen können Sie dies tun? Ich kann bei Bedarf auf MapInfo und Arc zugreifen
Alan Carr
Dieser Algorithmus wird sicher in Arcgis funktionieren und er könnte auch in Qgis mit Voronoi-Polygonen funktionieren. gis.stackexchange.com/questions/6971/thiessen-polygons-in-qgis
geogeek
6

Es gibt ein gutes Tool mit dem Namen ET GeoWizards 10.2 für Esri-Produkte, aber ich weiß nicht, ob es eine gute Lösung ist oder nicht ...

Sie können einige Informationen von hier bekommen

Mittellinien

daneben können Sie im Gras die Funktion für den Basisgebrauch überprüfen .

r.thin - Verdünnt Zellen ungleich Null, die lineare Features in einer Rasterkartebene kennzeichnen.

rthin ich hoffe es hilft dir ...

Aragon
quelle
3

finde einfach die Länge des Ganzen

Wie genau soll das Ergebnis sein? Eine Annäherung ist der Umfang geteilt durch 2.

So erzielen Sie ein besseres Ergebnis: Sie können einige Polygone manuell messen. Bestimmen Sie dann den Unterschied zwischen Messung und Umfang geteilt durch 2 . Wenden Sie diesen Korrekturfaktor auf den gesamten Datensatz an.

Jens
quelle