¿Cómo limpiar un archivo de forma tan malo para el enrutamiento?

16

Estoy tratando de limpiar un archivo shape para que pueda usarse para enrutar con pgrouting, postgis, postgresql.

Aquí una intersección, parece estar conectada, pero cuando hacemos zoom ... No lo es:

sin zoom 1 ampliado 1

Igual que aquí :

sin zoom 2 ampliado 2

Aquí (se amplía al máximo) hay 2 formas en que parece ser una, y solo una está conectada:

ampliado a un máximo de 2

Estoy usando execute_vertex_id con diferentes tolerancias, y QGIS y PostGIS, pero no sé qué usar.

Hokkos
fuente
Me pregunto: ¿son estos verdaderamente errores? Por ejemplo, ambas situaciones podrían usarse para representar una calle de doble sentido que se encuentra con una calle de un solo sentido. ¡Esto puede ser un problema crítico, porque no desea introducir nuevos errores en un esfuerzo por eliminar otros!
whuber
De hecho, es solo un archivo de forma horriblemente malo, quiero un enrutamiento no dirigido extremadamente simple, y lo que ves está muy ampliado.
Hokkos

Respuestas:

12

Puedes usar GRASS para limpiar un poco. Creo que necesita romper esos vectores, eliminar duplicados y luego ajustarlos. Para eso está la herramienta v.clean con las opciones break, rmdupl and snap.

Pablo
fuente
4

Dentro de PostGIS, intente ST_SnapToGrid para ajustar los vértices a una cuadrícula virtual. Debe realizar algún trabajo de detective para determinar qué distancia de ajuste utilizar. Podría ser un 0.01 (1 cm), o 1.0, etc.

Mike T
fuente