首页 > 解决方案 > PostGis 和 OSM 数据和 pgRouting 我想维护一个路由

问题描述

我有我制作的 osm 数据网络,但是在数据所在的国家/地区,有很多路线需要维护,所以距离是错误的,我如何在 is_maintenance = true 列中输出一些东西或布尔值,它只会计算来自其他路线的路线,即不是 is_maintenance = true

SELECT path_id, the_geom 
FROM pgr_ksp('
    SELECT gid as id, source, target, cost, reverse_cost
    FROM network
    WHERE is_maintenance = false', 
    ( 
        SELECT source 
        FROM network 
        ORDER BY the_geom <-> ST_SetSRID(St_point (0.0, 0.0), 4326)
        LIMIT 1
    ), 
    ( 
        SELECT target 
        FROM network 
        ORDER BY the_geom <-> ST_SetSRID(st_point (0.0, 0.0), 4326)
        LIMIT 1
    ),
    1, 
    false
) AS di
JOIN network pt ON (di.edge = pt.gid)
ORDER BY path_id, path_seq;

标签: postgresqlpostgisopenstreetmappgrouting

解决方案


推荐阅读