Я создал сеть маршрутизации на основе OSM с OSM2PO в PostgreSQL с расширением pgrouting. У меня есть столбец km
(расстояние в км), столбец cost
(время вождения) и max_speed
. Я пытаюсь создать водосбор с функцией pgr_drivingDistance используя колонку km
(расстояние в км). Это вычисляет водосбор с кратчайшим путем, который в большинстве случаев не является реалистичным расстоянием для автомобилей. Поэтому я хочу рассчитать водосбор на основе кратчайшего времени вождения, используя cost
. Но в результате мне нужны единицы метров и не время. Большое спасибо за любой намек.Получить расстояние от самого быстрого пути с помощью pgr_drivingDistance
Короткая версия: Мне нужен водосбор с расстоянием в км за самый быстрый маршрут (мин. Время)!
Вот стандартный код для pgr_drivingDistance с кратчайшим расстоянием в км:
SELECT *
FROM routing_vertices_pgr
JOIN(
SELECT * FROM pgr_drivingDistance('
SELECT id,
source,
target,
km as cost
FROM routing',
1, 100, false)) AS route ON routing_vertices_pgr.id = route.node ;
Это довольно специализированный вопрос. Возможно, вам лучше на http://dba.stackexchange.com –
Речь идет о пространственных функциях так лучше gis.stackexchange.com – Jendrusk