Membuat garis melengkung menggunakan QGIS?


10

Saya tidak punya banyak pengalaman dengan QGIS dan sedang mengerjakan peta dengan garis yang menghubungkan lokasi yang dibuat dengan plugin mmqgis. Adakah cara mudah untuk membuat sambungan langsung itu agak melengkung untuk tujuan estetika?

Saya mencoba mencapai sesuatu seperti peta di bawah ini tetapi dengan beberapa hub. Saya telah membaca saran tentang cara melakukan ini dengan PostGIS dan alat canggih lainnya, jadi saya telah melakukan penelitian (termasuk posting lain di sini) dan mencoba menggunakan beberapa plugin, dan saya secara khusus meminta solusi yang mudah karena saya tidak melakukannya. punya banyak pengalaman.

Contoh


apakah ada cara untuk membatalkan kurva saat mengedit atau membatalkan titik di mana Anda menempatkannya secara tidak sengaja?
3mm

Selamat datang di GIS SE! Sebagai pengguna baru, pastikan untuk mengikuti tur singkat untuk mempelajari tentang format T&J terfokus situs ini. Jika Anda memiliki pertanyaan, gunakan tautan Ajukan Pertanyaan daripada mengirim jawaban.
Andy

Jika Anda memiliki pertanyaan baru, silakan tanyakan dengan mengklik tombol Ajukan Pertanyaan . Sertakan tautan ke pertanyaan ini jika itu membantu menyediakan konteks. - Dari Ulasan
csk

Jawaban:


6

Jika Anda menggunakan QGIS 2.12 atau lebih baru, Anda akan memiliki " Tambahkan string lingkaran " Alat di " Digitizing Toolbar ". Atau Anda mungkin ingin mencoba " plugin Spline ".

(LHS) Tambahkan alat string melingkar selama digitasi, (RHS) Spline alat selama digitasi

digitalisasi

Anda dapat melihat Tambahkan alat string melingkar (LHS) menggambar garis melingkar atau setengah lingkaran, sedangkan alat Spline (RHS) menginterpolasi poin agar sesuai dengan garis Anda ke kurva spline. Apa pun yang Anda pilih, Anda hanya perlu mengklik 3 poin: titik awal, titik kurva dan titik akhir.

Dan Anda akan mendapatkan:

hasil

Ada alat lain seperti CadTools tetapi akan lebih menarik jika Anda menemukannya sendiri.


1
Terima kasih. Saya tidak mencari untuk membuat garis, tetapi untuk melengkung (tidak secara manual) yang sudah saya buat dengan mmqgis. Juga tidak mencari kesenangan, hanya untuk menyelesaikan sesuatu. Itu sebabnya saya datang ke sini, jadi bantuan apa pun akan dihargai! :)
darj

1
Terima kasih, terima kasih. Dan maaf saya salah. Sekarang saya mengerti Anda sudah memiliki Hub Lines yang dibuat oleh plugin MMQGIS.
Kazuhito

6

Gunakan gaya Panah bukannya gaya Garis Sederhana.

Misalnya, garis-garis ini dengan gaya Garis Sederhana:

masukkan deskripsi gambar di sini

terlihat seperti ini dengan gaya Panah:

masukkan deskripsi gambar di sini

Anda dapat mematikan kepala panah dengan mengatur lebar dan panjang kepala ke 0.

Seperti yang Anda lihat, garis lurus menjadi panah lurus, sedangkan garis dengan simpul tengah menjadi panah melengkung. Penempatan vertex tengah menentukan kurva panah.

Untuk mengonversi garis lurus menjadi panah melengkung, Anda harus menambahkan simpul tengah ke setiap baris, lalu mengimbangi simpul itu cukup untuk menghasilkan panah melengkung.

Gunakan gaya Geometry Generator dengan tipe Geometry: Linestring. Ekspresi ini akan membuat garis dengan titik tengah 200 unit jarak ke timur dan utara dari titik tengah asli garis.

  make_line( start_point( $geometry), translate( centroid( $geometry), 200,200), end_point($geometry))

Ubah baris untuk ditampilkan sebagai gaya Panah. Sesuaikan nilai offset centroid dalam ekspresi generator geometri sampai Anda puas dengan bentuk panah. Jika Anda mau, Anda bisa membuatnya proporsional dengan panjang garis asli, mis $length/10. Ekspresi penuh adalah:

make_line( start_point( $geometry), translate( centroid( $geometry), $length/10, $length/10), end_point($geometry))

Begini tampilannya, dengan garis asli berwarna pink dan panah yang dihasilkan geometri berwarna hitam:

masukkan deskripsi gambar di sini

Jika Anda tidak puas dengan penempatan titik tengah garis, Anda dapat menyesuaikannya secara manual. Pertama, ubah gaya garis geometri yang dihasilkan menjadi lapisan aktual. Salin ekspresi dari generator geometri ke geometry by expressionalat (Memproses kotak alat). Kemudian gunakan Alat Vertex (Digitizing toolbar) untuk memindahkan simpul secara manual.

Catatan: Jawaban ini dibuat dengan QGIS 3.4.


4

Anda harus membuat beberapa langkah lagi: (Saya punya versi Belanda jadi jika itu bukan terjemahan yang tepat, maaf). Seperti @bugmenot lakukan, tetapi sekali lagi pilih Isi dan dan ubah dari Symbol Layer Type Standard Filling ke: 'Rand / Edge ?: Arrow. Saya telah melakukan pengisian bertahap warna [geleiddelijke vulling] di 'Isi' terakhir. Semoga bisa membantu. masukkan deskripsi gambar di sini


Terima kasih! Apakah mungkin untuk menyesuaikan sudut kurva sehingga lebih rata seperti pada gambar yang saya posting?
darj

Saya rasa itu tidak mungkin. Mungkin dengan beberapa scripting dengan Python, tapi itu bukan cangkir saya thea.
Willem
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.