Puffer basierend auf Polylinien ohne Zeilenendkappen erstellen und ohne die erstellten Polygone in QGIS aufzulösen?


10

Ich habe eine projizierte Linienebene (Shapefile) in QGIS. Für jedes Liniensegment möchte ich ein Polygon ohne Linienendkappen erstellen. Das resultierende Polygon sollte nicht zu einem einzigen aufgelöst werden.

Ich habe versucht, fTools Pufferungstool. Dies kann einen Puffer erstellen, ohne sich aufzulösen, aber es ist nicht möglich, die Zeilenendkappen zu definieren.

Ich habe auch v.buffer von GRASS ausprobiert. Dies kann einen Puffer mit definierten Zeilenenden erstellen, aber ich kann das Auflösen nicht deaktivieren.

Gibt es eine Möglichkeit, beides zu haben: nicht aufgelöst und ohne Kappen am Zeilenende? Das Ergebnis sollte ein Shapefile mit Polygonen (Puffer) für jedes Liniensegment sein.


1
Können Sie ein Bild von dem zeichnen, was Sie vorhaben?
Raphael

Warum nicht etwas Python schreiben, um die Liniensegmente zu durchlaufen und v.buffer für jedes einzeln auszuführen?
Mr Purple

Antworten:


5

Mit GRASS v.bufferdrücken Iterate over this layerTaste.

Die folgende Abbildung (RHS) zeigt Puffer, eine Pufferpolygonschicht pro Polylinienmerkmal, ohne gelöste Teile. Führen Sie dann die Ausgabepuffer zusammen. ( Vector | Data Management Tools)

Geben Sie hier die Bildbeschreibung ein


etwas lächerlich, dass man für jedes Puffer- / Liniensegment eine eigene Ebene erstellen muss. Dies ist für komplexe Geometrien einfach nicht möglich
user32882

2

Ich stelle mir vor, dass dies das sein könnte, wonach Sie suchen:

Geben Sie hier die Bildbeschreibung ein

Wenn ja, müssen Sie Ihre Polylinien zunächst in Linien aufteilen, z. B. mit dem Verarbeitungswerkzeug "Linien explodieren".

Wenn v.bufferSie sich dann wie oben erwähnt bewerben , kann dies zum Erfolg führen.

aktualisieren

Was ich gerade gesehen habe, ist, dass das Werkzeug "Linien explodieren" ein wenig über das Ziel schießt, weil es jede Polylinie in Segmente mit nur Start- und Endpunkt und nichts dazwischen explodiert ...

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.