Saya mencoba menggunakan QGIS 2.14 untuk mengambil jaringan jalan ke jaringan heksagonal, tapi saya mendapatkan artefak yang aneh.
Saya telah membuat hex grid dengan MMQGIS , sel kira-kira 20 x 23 m. Saya telah buffer jaringan jalan dengan 1m dan memadatkannya sehingga ada node setiap beberapa meter. Anda dapat melihat apa yang saya coba capai di bawah ini. Seperti yang Anda lihat, saya bisa membuatnya berfungsi dalam beberapa kasus: -
- biru adalah jalan padat (garis buffered)
- merah adalah versi 'hexified' - ini yang ingin saya temukan
- abu-abu adalah kisi hex
Saya kemudian menggunakan fitur Snap geometri baru untuk mengambil node ke sudut segi enam terdekat. Hasilnya menjanjikan, tetapi tampaknya ada beberapa kasus tepi di mana garis mengembang untuk mengisi segi enam (atau bagian dari itu): -
Alasan buffer adalah bahwa geometri Snap tidak memungkinkan Anda untuk mengambil lapisan yang geometrinya berbeda. Sebagai contoh, Anda tidak dapat mengambil node pada layer LINE ke poin pada layer POINT). Tampaknya menjadi yang paling menyenangkan memotret POLYGON ke POLYGON.
Saya menduga jalan melebar ketika satu sisi dari garis jalan yang disangga melompat ke satu sisi sel hex, dan sisi lain melompat ke sisi lain dari sel hex. Dalam contoh saya, jalan-jalan yang melintasi barat-timur pada sudut yang akut tampaknya yang terburuk.
Hal yang sudah saya coba, tanpa hasil: -
- buffering jaringan jalan dengan jumlah kecil, sehingga tetap poligon tetapi sangat tipis.
- memadatkan sel hex (jadi ada node di sepanjang tepi, tidak hanya di sudut)
- memvariasikan jarak gertakan maksimum (ini memiliki efek terbesar, tetapi saya tidak dapat menemukan nilai yang ideal)
- menggunakan layer LINE, bukan POLYGON
Saya menemukan bahwa jika saya mengubah menggunakan hanya lapisan LINE, itu berfungsi untuk sementara waktu, kemudian macet. Tampaknya untuk menyimpan pekerjaannya - beberapa baris telah diproses sebagian.
Adakah yang tahu cara lain untuk mengambil titik pada garis ke titik terdekat pada garis / lapisan poligon lain, idealnya tanpa perlu menggunakan postgres / postgis (walaupun solusi dengan postgis akan diterima juga)?
EDIT
Bagi siapa saja yang ingin mencoba, saya telah meletakkan proyek QGIS pemula di sini di Dropbox . Ini termasuk Hex Grid dan layer garis Densified. (Jaringan jalan dari OSM, jadi dapat diunduh menggunakan QuickOSM misalnya jika Anda perlu mendapatkan dokumen asli untuk mengurangi jalan).
Perhatikan bahwa ini dalam OSGB (epsg: 27700) yang merupakan UTM lokal untuk Inggris, dengan satuan dalam meter.