Cuando la carga de datos PostGIS, no hay información de la topología asociada con ellos. Para crear un útil de la topología de los datos debe ser "noded". Esto significa que donde dos o más caminos se forma una intersección no debe ser un nodo en la intersección y de todos los segmentos de carretera deben ser rotos en la intersección, asumiendo que se puede navegar desde cualquier de estos segmentos a cualquier otro segmento a través de la intersección. (Extracto de pgrouting 2.0 documentación).
En tu caso, parece que algunos nodos son comunes entre los puentes sobre carreteras y debajo de las carreteras. No sé si los nodos se han dado en la NTI de datos o si los ha creado.
Así que usted tiene que pasar a limpio red de pgrouting :
Digamos que usted tiene un puente (a-B-C) y una carretera por debajo de (D) :
La tabla de pasar a pgRouting es como :
source | target | geometry | cost
A | B | LINESTRING (A,B) | cost_ab
B | C | LINESTRING (B,C) | cost_bc
D | B | LINESTRING (D,B) | cost_db
B | E | LINESTRING (B,E) | cost_be
Tienes que modificarlo para que se
source |target | geometry | cost
A | C | LINESTRING (A,B,C) | cost_ab+cost_bc
D | E | LINESTRING (D,B,E) | cost_db+cost_be
Puede crear una tabla temporal y el uso de algunas sentencias case para llenar las columnas/filtro de su grado y generar la modificación de la red.
Tenga en cuenta que pgRouting 2.0 documentación da un ejemplo (pero con nuevos métodos) : pgRouting 2.0 topología de Enrutamiento