QGIS buffer polygon dengan lebar berbeda di setiap sisi

12

Saya membuat peta untuk penilaian risiko kebakaran dan terus-menerus diminta untuk merencanakan zona penyangga "ruang yang dapat dipertahankan" di sekitar amplop bangunan yang berbeda jarak di sisi bangunan yang berbeda. (Lihat gambar)

Saya telah melakukan ini di QGIS dengan membuat buffer untuk setiap jarak yang diperlukan dan kemudian menggambar secara manual yang cocok sedekat mungkin.

Ini jelas kurang ideal. Apakah ada cara saya bisa membuat buffer ini dengan QGIS? Saya juga memiliki akses ke ArcGIS dan MapInfo.

Beberapa Jarak Penyangga

chrisxrobertson
sumber
1
Selamat datang di GIS.SE! Bisakah Anda menambahkan sedikit lebih detail, seperti mengatakan apa yang menentukan jarak (misalnya mengapa dua sisi 25m, dan dua sisi 19m)? Apakah ada beberapa atribut, atau logika lainnya?
BradHards
3
Salah satu cara akan mengkonversi poli ke garis, tambahkan bidang jarak buffer, mengisi dengan jarak yang benar, garis buffer, melarutkan buffer, menghilangkan lubang di tengah. Jika Anda mengubahnya menjadi skrip atau model, mungkin lebih cepat daripada metode manual Anda. Tetapi mendapatkan jarak buffer variabel di sana, atau membuat beberapa atribut yang mengatakan baris ini adalah tipe buffer ini sehingga dapat melakukannya sendiri sepertinya membutuhkan intervensi manual untuk setiap bentuk, yang memperlambat segalanya.
Chris W
@BradHards Terima kasih, saya sudah lama bersembunyi di sini! Jarak yang diberikan kepada saya oleh konsultan yang menyiapkan laporan dan menunjukkan jarak dari gedung yang dapat dipertahankan dalam kasus kebakaran hutan. Jarak bervariasi dari bangunan ke bangunan, dan setiap sisi bangunan juga bisa berbeda. Hanya untuk membuatnya mudah. Saya telah melihat jarak mulai dari 13m hingga 30m.
chrisxrobertson
@ Chris Saya tidak memikirkan poly to line, itu masuk akal, terima kasih. Ini tidak akan mencukur banyak waktu istirahat, tetapi setidaknya buffer akan lebih akurat.
chrisxrobertson
@BradHards Karena dia memetakan penilaian risiko, tebakan saya adalah pemetaan apa pun area yang ada yang akan memenuhi syarat sebagai ruang yang dapat dipertahankan. Seperti halnya survei kondisi yang ada, itu akan bervariasi dari situs ke situs. Ruang yang dapat dipertahankan harus seragam 30 'di semua sisi struktur (tergantung di mana Anda berada dan zona pertahanan apa yang sedang kita bicarakan). Karena kasing semua fitur unik, saya tidak tahu cara untuk mengotomatiskan / mempercepat proses.
Chris W

Jawaban:

6

Jadi saya berasumsi Anda sudah memiliki poligon yang perlu disangga dan Anda memiliki jarak (dalam meter atau kaki tergantung pada sistem proyeksi Anda).

Tidak masalah apa Anda akan memiliki pekerjaan manual di sini, karena Anda harus memasukkan jarak penyangga ini.

Tetapi kita dapat menghapus banyak pekerjaan manual dengan beberapa model di QGIS.

Modelnya adalah:

  1. Ubah poligon menjadi polyline.
  2. Meledakkan polyline.
  3. Tambahkan kolom buffer yang akan digunakan untuk buffer.

Karena kami meledak polyline Anda dapat memiliki jarak buffer yang berbeda untuk setiap sisi (polyline).

Kemudian Anda memiliki langkah manual untuk menempatkan jarak buffer untuk setiap polyline.

Model selanjutnya:

  1. Buffer jarak variabel GRASS. (Gunakan GRASS karena memungkinkan gaya tanpa ujung, sehingga ujungnya tidak tumpang tindih dengan sisi lainnya)
  2. Lambung cembung untuk memperbaiki sudut.

Dalam gambar, model 1:

Poligon asli:

masukkan deskripsi gambar di sini

  1. Polygon ke polyline:

masukkan deskripsi gambar di sini

  1. Meledakkan polyline.
  2. Tambahkan kolom buffer dengan nilai yang ditambahkan secara manual:

masukkan deskripsi gambar di sini

Model 2:

  1. Buffer GRASS jarak variabel dengan kolom buffer. v.buffer.column dengan "Jangan tutup di ujung polyline", centang:

masukkan deskripsi gambar di sini

  1. Convex hull untuk memperbaiki sudut:

masukkan deskripsi gambar di sini

Sudut adalah bagaimana kita menginginkannya. Jika Anda menggunakan endcaps Anda berakhir dengan banyak tumpang tindih dengan buffer jarak yang lebih panjang.

Model 1:

masukkan deskripsi gambar di sini

Model 2:

masukkan deskripsi gambar di sini

HeikkiVesanto
sumber