Bagaimana cara membersihkan shapefile yang buruk untuk routing?


16

Saya mencoba untuk membersihkan shapefile agar dapat digunakan untuk routing dengan pgrouting, postgis, postgresql.

Di sini persimpangan, tampaknya terhubung tetapi ketika kita memperbesar…. Bukan itu:

tidak diperbesar 1 diperbesar 1

Sama disini :

tidak diperbesar 2 diperbesar 2

Di sini (diperbesar maksimal) ada 2 cara ketika tampaknya satu, dan hanya satu yang terhubung:

diperbesar pada maks 2

Saya menggunakan assign_vertex_id dengan toleransi berbeda, dan QGIS dan PostGIS, tetapi saya tidak tahu apa yang harus digunakan di dalamnya.


Saya bertanya-tanya: apakah ini benar-benar kesalahan? Sebagai contoh, kedua situasi dapat digunakan untuk mewakili pertemuan dua arah jalan satu arah. Ini mungkin masalah kritis, karena Anda tidak ingin memperkenalkan kesalahan baru dalam upaya untuk menghilangkan orang lain!
whuber

Sebenarnya itu hanya shapefile yang sangat buruk, saya ingin perutean tanpa arah yang sangat sederhana, dan apa yang Anda lihat sangat diperbesar.
hokkos

Jawaban:


12

Anda dapat menggunakan GRASS untuk melakukan pembersihan. Saya pikir Anda perlu untuk istirahat vektor menghapus duplikat dan kemudian snap Untuk itu ada alat v.clean dengan opsi break, rmdupl and snap.


4

Di dalam PostGIS, coba ST_SnapToGrid untuk mengambil simpul ke kotak virtual. Anda perlu melakukan beberapa pekerjaan detektif untuk menentukan jarak gertakan yang digunakan. Bisa jadi 0,01 (1 cm), atau 1,0, dll.

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.