13 votos

PgRouting - Cómo clip de enlaces al llegar a max costos?

Tengo una polilínea shapefile que representa una red de carreteras, y un segundo archivo shape que contiene puntos. Me gustaría usar PostGIS (presumiblemente PgRouting) para identificar las sub-redes o áreas de servicio que se irradia a partir de estos puntos.

Esencialmente, estoy esperando a hacer la pregunta, "desde el punto X, en qué medida podría caminar en cualquier dirección, de un total presupuesto de viaje de 1 km, siguiendo la carretera de la red?" El resultado sería un conjunto de recortado polilíneas que representan el rango total de viajes posibilidad, dada a 1 km del presupuesto de viaje.

Para referencia, esta HIERBA análisis parece ser exactamente lo que quiero hacer (excepto yo quiero hacer esto en PostGIS): http://www.gdf-hannover.de/lit_html/grass60_v1.2_en/node57.html#sec:optalloc

Este ejemplo parece ser casi lo que yo quiero hacer, excepto que parece responder a la pregunta "qué nodos podría viajar a dado un presupuesto de viaje de X distancia?" http://underdark.wordpress.com/2011/02/12/drive-time-isochrones/

La segunda no es exactamente la respuesta que estoy buscando, como yo quiero que todas las polilíneas enganchado a mi la distancia de viaje-no me importa si puedo hacer todo el camino de un nodo.

Muchas gracias por tu ayuda!

2voto

aditya Puntos 111

Un pensamiento que tuve fue: 1) ejecutar el driving_distance rutina y 2) el uso de la "points_as_polygon" de rutina de pgRouting (que llama a la alphashape función) para generar el más pequeño polígono(s) en el costo de las distancias basadas en los puntos de la driving_distance rutina devuelve. A continuación, puede seleccionar todas las calles dentro de los polígonos que le dará una idea general de los viajes.

Si usted no ha estado siguiendo el debate sobre el pgRouting lista de usuarios, que han estado discutiendo más opciones últimamente (Mayo y junio de 2011 hilos).

1voto

FlySwat Puntos 61945

Ya que este es realmente un gráfico problema, lo que necesita es la conectividad/topología + el coste de la información. Para pg_routing, que es la tabla que se envíe a los algoritmos de camino más corto. Este artículo tiene información sobre cómo construir uno (supongo que usted ya tiene uno). Siento no poder dar a su la función exacta en pg_routing que hace esto, pero la escritura de uno debe ser factible. Sin embargo, puedo decir que si has de seguir llamando la shortest_path más y más de que estamos haciendo el algoritmo de abajo más y más y desbaratando el resultado - no eficientes.

La solución, a continuación, vuelve a caminar todos los bordes, mientras que la adición de ellos a un "dio la lista de" informática y un costo hasta de su presupuesto (que yo.e distancia) está sobregirada. Si el presupuesto es aceptable (me.e el presupuesto no ha sido descubierto), también se añade la geometría a una "lista aceptable de la geometría de la bolsa". Usted sólo tiene que procesar cada arista exactamente una vez. Para el último filo (donde sus presupuestos están en descubierto), usted necesita para obtener la longitud y interpolar la distancia exacta que usted desea viajar, a continuación, añadir el resultado a la "lista aceptable". El resultado es una unión de la geometría de la bolsa.

1voto

tobes Puntos 19

"A partir del punto X, en qué medida podría caminar en cualquier dirección, de un total presupuesto de viaje de 1 km, siguiendo la carretera de la red?"

Como usted sólo tiene que considerar una pequeña región (a 1km de radio de max), usted probablemente podría salirse con la división de los enlaces en varios trozos pequeños (dependiendo de la precisión que usted desea alcanzar) y la creación de la necesaria nodos. La resultante "de alta resolución", las redes deberían ser todavía manejable.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X