Berechnung des Mindestabstands zwischen Punkten und Polygonen in QGIS?


9

Ich habe zwei Vektorebenen: einen Punkt und ein Polygon und ich möchte den Mindestabstand jedes Punkts von den Polygonen berechnen (dh den Abstand vom nächsten Punkt des nächsten Polygons).

Gibt es dafür ein verfügbares Plugin in QGIS?


1
Du meinst Polygonscheitelpunkte, den Schwerpunkt oder etwas anderes?
Lynxlynxlynx

Diese Aufgabe würde besser von Postgis erledigt.
Pablo

Ich meine die Entfernung von den Grenzen des Polygons (eigentlich ist es die Entfernung der beobachteten Seevögel im Meer von der Küste, die ich berechnen möchte)
Sylvia

Pablo, leider weiß ich nicht, wie man PostGIS benutzt und ich kann keinen Code schreiben ...
Sylvia

Antworten:


9

Das Konvertieren Ihres Polygons in Punkte ist eine schlechte Idee. Sie berechnen nicht den Abstand zu Ihrem Polygon, sondern den Abstand zum nächsten Knoten Ihrer Polygone (nicht zu den Kanten, die möglicherweise näher liegen). Sie können das NNJoin-Plugin verwenden , um genaue Messungen für Ihr Polygon zu erhalten. Stellen Sie sicher, dass sich Ihre Ebenen in derselben Projektion befinden, bevor Sie eine Analyse durchführen.


1
Das QGIS NNJoin Plugin kümmert sich um die Koordinatensystemtransformation. Sie sollten jedoch sicherstellen, dass Sie ein projiziertes Koordinatensystem für den Verknüpfungsdatensatz verwenden (der Eingabedatensatz wird in das Koordinatensystem des Verknüpfungsdatensatzes transformiert, wenn sich die Koordinatensysteme unterscheiden).
Håvard Tveite

6

Wenn Sie QGIS verwenden möchten, sollte die Funktion GRASS v.distance im GRASS-Plugin die Aufgabe übernehmen. Das NNJoin- Plugin sollte für kleine Datensätze funktionieren und ist weniger umständlich zu verwenden.

Das NNJoin- Plugin verwendet die Funktion QgsGeometry.distance () (die GEOSdistance verwendet), um die Entfernungen zu berechnen.


3

Konvertieren Sie zuerst das Polygon in Punkte:

Vektor -> Geometrie-Werkzeuge -> Knoten extrahieren

Fügen Sie diese neue Ebene hinzu und berechnen Sie dann eine Abstandsmatrix zwischen Ihrer Punktebene und der neuen Polygonpunktebene, die Sie gerade erstellt haben

Vektor -> Analysewerkzeuge -> Distanzmatrix

Stellen Sie sicher, dass Sie "Nur die nächsten (k) Zielpunkte verwenden" als 1 auswählen


Dies ist eine gute Antwort auf die ursprüngliche Frage, aber die Frage wurde seitdem in einem Kommentar geändert. Knoten extrahieren und Entfernungsmatrix finden möglicherweise nicht die nächstgelegene Stelle an der Grenze (die nächstgelegene Stelle befindet sich möglicherweise zwischen den Punkten der Grenzpolylinie). GRASS v.distance oder das NNJoin Plugin wird.
Håvard Tveite

2

Versuchen Sie Hub Distance im MMQGIS-Plugin.

http://michaelminn.com/linux/mmqgis/


Verweise:


2
Die Hubentfernung hat den Job erledigt, aber für die Aufzeichnung habe ich zuerst das Polygon in eine Punktebene konvertiert und die minimalen Punkt-zu-Punkt-Entfernungen berechnet. Mit den Polygonen berechnete es den Mindestabstand von den Zentroiden oder der Mitte der Küstengrenze
Sylvia
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.