Membagi poligon dengan garis grid di QGIS?

8

Saya memiliki layer vektor poligon dan layer vektor garis dalam bentuk kisi (keduanya dalam format .shp). Saya perlu membagi poligon dengan garis-garis ini.

Saya mencoba alat digitalisasi tetapi masalahnya adalah ia hanya berurusan dengan 1 baris pada satu waktu dan saya memiliki lebih dari 52.000 baris. Butuh waktu sangat lama untuk membelahnya secara manual. Bagaimana itu bisa dilakukan untuk semua lini?

Saya punya QGIS 2.18.

NecroSith
sumber
Perhatikan saja pertanyaan-pertanyaan yang sangat erat kaitannya yang mungkin membantu: Pisahkan garis dengan poligon di QGIS 2.4 ; dan Bagaimana cara memecah Poligon berdasarkan garis kisi?
Joseph

Jawaban:

9

Saya mungkin akan melakukan hal berikut:

  1. Jalankan alat Garis ke poligon :

    Vector > Geometry Tools > Lines to polygons
    

    Atau alat Polygonize (seperti yang disarankan oleh @GaborFarkas ):

    Processing Toolbox > QGIS Geoalgorithms > Vector geometry tools > Polygonize
    

  1. Jalankan alat Klip menggunakan output dari Langkah 1 sebagai lapisan Input dan lapisan poligon Anda sebagai lapisan Klip :

    Vector > Geoprocessing Tools > Clip
    
Yusuf
sumber
2
The Lines to polygonsalat hanya mengubah jenis geometri di sekitar (geometri fitur menjadi cincin luar poli yang dihasilkan). Oleh karena itu, ini hanya berfungsi jika setiap fitur dalam lapisan garis membentuk sel kisi. Jika mereka hanya garis lurus vertikal dan horizontal yang saling berpotongan, Polygonizealat ini adalah yang tepat untuk pekerjaan itu.
Gabor Farkas
@GaborFarkas - Memang Anda benar! Saya berasumsi garis dekat untuk membentuk sel kotak yang tampaknya telah disarankan oleh OP :). Tetapi Polygonizelebih dari solusi serba jadi terima kasih untuk menyebutkan!
Joseph
1
Terima kasih banyak vrey, Joseph dan @Gabor Farkas, itu berhasil. Di kisi saya setiap fitur membentuk sel sehingga garis dalam poligon melakukannya dengan sempurna. . :)
NecroSith
@NecroSith - Selamat datang, senang itu bekerja =)
Joseph
1

Setelah baris dan poligonisasi seperti @GaborFarkus menyarankan jalankan saga's atau native split dengan garis. Garis harus berbentuk tertutup. Dapat dengan mudah membuat kotak dengan 'buat kotak'. Kemudian jalankan sagas convert points to lines menggunakan kiri / kiri terlebih dahulu kemudian opsi atas / atas. Gabungkan kedua layer garis itu. Kemudian jalankan polygonize pada garis yang digabungkan. Kemudian jalankan poligon ke garis itu. Ini akan membuat garis sel tertutup yang dapat Anda bagi dengan.

Tai Green
sumber