QGIS kullanarak düzensiz poligonu eşit alanlara bölmek?


10

Ben bir sörveyörüm ve sivil projelerde toprak testi kayıtlarını tutmak için QGIS kullanıyorum ve sürekli olarak lot alanı veya gerekli lot sayısı sağlanıyor. Bunlar şekil olarak düzensiz olmamaktan ve merak etmekten daha sık görülür.

Düzensiz poligon içeren bir katmanı eşit alanlara veya belirtilen alana sahip lot sayısına bölmek için bir eklenti / çözüm var mı, sonuç sağlanan alana göre en fazla lot sayısı mı?


Daha önce yayınlanan ArcGIS çözümlerinden bazıları burada yardımcı olabilir. Özellikle, yazılımdan bağımsız bir algoritma yayınladım .
whuber

Yanıtlar:


5

En basit yol:

  • QGIS'i açın ve eklenti indiricisi aracılığıyla mmqgis uzantısını indirin
  • Şekillerinizi yükleyin ve projeksiyonlarını proje CRS'si olarak ayarlayın (rightclick)
  • Mmqgis - create - create ızgara katmanına git
  • Çokgenleriniz için yeterli boşluk bırakan bir ızgara tanımlayın. Dikdörtgenlerin yanı sıra altıgenler ve öğeler de tanımlayabilirsiniz
  • Şimdi çokgenlerinizin eşit aralıklı kısımlarını elde etmek için vektör menüsündeki işlevle basit bir klip yapın. (oluşturduğunuz ızgarayı çokgenlerle kırpın). Bu, böyle bir şeyde çözülecektirresim açıklamasını buraya girin
  • Artık özellik tablosunu korumak için eski şeklinizin ve yeni şeklinizin niteliklerine katılabilirsiniz. Nitelikleri korumak için Klips yerine Birlik de yapabilirsiniz, ancak bu, yüzey yapısına bağlı olarak şeklinizin biraz sonradan işlenmesini gerektirebilir.

1
ahh, sadece bu çözümün kırpma nedeniyle eşit aralıklı alanlarda çözülmediğini fark ettim. Üzgünüm. Çokgen çekirdeğinde yalnızca tam dikdörtgen alırsanız, belki de yeni bir komut dosyasının temeli olabilir.
Curlew

2

şekil dosyalarını açık kaynak araçlarıyla bölmenin bazı yolları vardır. ancak giriş dosyaları düzensiz bir çokgen olduğunda onları eşit parçalara ayırmaya çalışmadım. hala denemek istiyorsan aşağıdaki yolları deneyebilirsin.

  1. shp2tile - eşit parçaları bölebilir.

  2. bu soruyu okuyabilirsiniz Bir vektörü QGIS veya benzerlerinde eşit küçük parçalara nasıl bölebilirim?

  3. bazı sql sorgusu ve döngü için ogr2ogr kullanarak elde edebilirsiniz.

     ogr2ogr newshape_1.shp input.shp -sql "SELECT * FROM MyShape WHERE size = 100"
    
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.