QGIS'de noktalar ve çokgenler arasındaki minimum mesafeyi mi hesaplıyorsunuz?


9

İki vektör katmanım var: bir nokta ve bir çokgen ve çokgenlerden her noktanın minimum mesafesini (yani en yakın çokgenin en yakın noktasına olan mesafeyi) hesaplamak istiyorum.

Bunu yapmak için QGIS'te herhangi bir eklenti var mı?


1
poligon köşeleri, sentroid ya da başka bir şey mi demek istiyorsun?
lynxlynxlynx

Bu görev postgis tarafından daha iyi ele alınacaktır.
Pablo

Çokgenin sınırlarından uzaklığı kastediyorum (aslında denizde gözlemlenen deniz kuşlarının yatıştırmak istediğim kıyı şeridine olan mesafesi)
Sylvia

Pablo, ne yazık ki PostGIS'i nasıl kullanacağımı bilmiyorum ve kod yazamıyorum ...
Sylvia

Yanıtlar:


9

Çokgeninizi önce noktalara dönüştürmek kötü bir fikirdir. Çokgeninize olan mesafeyi hesaplamayacaksınız, çokgenlerinizin en yakın düğümüne olan mesafeyi hesaplayacaksınız (daha yakın olabilecek kenarlar değil). Çokgeninize doğru ölçümler almak için NNJoin Eklentisini kullanabilirsiniz . Analiz yapmadan önce katmanlarınızın aynı projeksiyonda olduğundan emin olun.


1
QGIS NNJoin Eklentisi koordinat sistemi dönüşümüyle ilgilenir. Ancak birleştirme veri kümesi için öngörülen bir koordinat sistemi kullandığınızdan emin olmalısınız (giriş veri kümesi, koordinat sistemleri farklıysa birleştirme veri kümesinin koordinat sistemine dönüştürülecektir).
Håvard Tveite

6

QGIS kullanmak istiyorsanız , GRASS eklentisindeki GRASS v.distance işlevi işi yapmalıdır. NNJoin eklentisi küçük veri setleri için çalışmak ve kullanım için daha az hantal olmalıdır.

NNJoin eklenti mesafeleri hesaplamak için (GEOSdistance kullanır) QgsGeometry.distance () fonksiyonunu kullanır.


3

İlk önce çokgeni noktalara dönüştürün:

Stok Fotoğraf -> Geometri Araçları -> Özü Düğümleri

Bu yeni katmanı ekleyin, ardından noktalar katmanınız ile yeni oluşturduğunuz yeni çokgen noktaları katmanı arasındaki mesafe matrisini hesaplayın

Stok Fotoğraf -> Analiz Araçları -> Mesafe Matrisi

"Sadece en yakın (k) hedef noktaları kullan" seçeneğini seçtiğinizden emin olun 1


Bu orijinal soruya iyi bir cevaptır, ancak soru o zamandan beri bir yorumda değiştirilmiştir. Çıkarma düğümleri ve Mesafe Matrisi, sınırdaki en yakın yeri bulamayabilir (en yakın yer, sınır çoklu çizgisinin noktaları arasında olabilir). GRASS v.distance veya NNJoin eklentisi olacaktır.
Håvard Tveite

2

MMQGIS eklentisinde Hub Mesafesini deneyin.

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


Referanslar:


2
Hub mesafesi işi yaptı, ancak kayıt için önce çokgeni bir nokta katmanına dönüştürdüm ve minimum noktadan noktaya mesafeleri hesapladım. Çokgenler ile, merkez sınırlardan veya kıyı sınırının ortasından minimum mesafeyi hesaplıyordu
Sylvia
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.