Cara buffer garis dengan jarak yang berbeda untuk sisi kiri / kanan

14

Bagaimana saya bisa buffer baris di QGIS menggunakan satu atribut untuk sisi kiri baris dan satu atribut untuk sisi kanan baris? Saya mencoba untuk menyangga sungai dengan lebar tepiannya, yang berbeda di sisi kanan dan kiri.

Olga
sumber
sudahkah Anda mencoba menggunakan buffer JTS dari QGIS? lin-ear-th-inking.blogspot.it/2010/11/...
julien

Jawaban:

8

Mendefinisikan sisi garis agak lurus ke depan pada permukaan yang dapat diorientasikan , yang merupakan bidang 2D dalam GIS. Jika Anda menentukan titik awal dan titik akhir untuk suatu garis, Anda dapat dengan jelas mendefinisikan sisi "kiri" dan "kanan". Ini adalah kasusnya bahkan jika garis melintang dengan sendirinya.

Dari sudut pandang yang lebih praktis, alur kerja sederhana untuk membuat buffer satu sisi mencakup buffer standar, operasi perbedaan, dan kemudian operasi kliping. Ini sebuah contoh.

Mulailah dengan membuat poligon yang mencakup, atau tepatnya tumpang tindih, garis Anda. Agar penyangga berada di sisi kanan garis Anda, bagian dalam poligon harus di sebelah kiri. Perhatikan bahwa jika garis Anda memotong sendiri maka ini tidak akan berfungsi seperti yang diinginkan, dan Anda mungkin perlu menggambar poligon sehingga tidak memotong sendiri atau garis Anda. Terapkan operasi buffer ke poligon ini. Menggunakan plugin fTools, buka Geoprocessing Tools> Buffer.

Poligon

Menggunakan operasi perbedaan, Alat Geoproses> Perbedaan, dengan buffer sebagai lapisan input dan poligon asli sebagai lapisan perbedaan, potong bagian dalamnya. Sekarang Anda memiliki penyangga sisi kanan.

Poligon yang disangga

Yang tersisa hanyalah memotong bagian "ekstra" dari poligon. Alat Geoprosesing> Klip.

Klip poligon Baris terakhir

katahdin
sumber
1

Ini adalah pertanyaan yang sangat menarik, yang menurut saya tidak mudah untuk dipecahkan. Saya menemukan skrip untuk ArcMap yang menyediakan solusi yang didokumentasikan dengan sangat baik yang mencakup 500 baris kode VB. Namun saya tidak mengetahui script atau modul yang setara di QGIS.

Salah satu pertimbangan utama dalam buffer asimetris adalah arah aliran garis, sehingga Anda dapat menentukan sisi kiri dan kanan. Dalam kasus sungai, ini harus langsung dihitung jika Anda memiliki DEM yang menyertainya.

Dimungkinkan untuk membuat skrip qgis di sekitar logika skrip ini, tetapi itu membutuhkan banyak pekerjaan.

sgrieve
sumber
1
Di ArcMap ini sangat mudah dicapai. Dalam dialog alat Anda memiliki parameter Side Typeyang dapat berupa kiri atau kanan. Dan Anda memiliki parameter Field. Jadi skrip alat ini memungkinkan Anda untuk menggunakan nilai yang berbeda untuk keduanya. Saya baru-baru ini melakukan ini (lihat pertanyaan saya di sini )
LarsVegas