[OSRM-talk] Per-Direction Node Restrictions
spencergardner at gmail.com
Tue Sep 27 14:29:10 UTC 2016
On Tue, Sep 27, 2016 at 5:11 AM, Daniel Hofmann <hofmann at mapbox.com> wrote:
> When you say "should be avoided" you mean completely discarding a way
> going over a specific node in a single direction?
> In that case, we support turn restrictions in the form of
> `fromWay,viaNode,toWay` you could try.
> As in: `no_turn, fromResidential, viaHighwayNode, toResidential`
> (Relevant: via-way restrictions: https://github.com/Project-
> Daniel J H
I had considered turn restrictions, but I was hoping for something a little
more generalizable so that I don't have to identify specific nodes and ways
in the config. For example, I'd like to tell the router to avoid a node
representing the intersection of a residential way and a primary way IF the
route is using the residential way. But I'd like to avoid having to
identify all such instances via turn restrictions.
I could imagine something like the following pseudo code:
function crossing_penalty(entering_way, crossing_way, node)
local entering_highway = way:get_value_by_key("highway")
local crossing_highway = way:get_value_by_key("highway")
-- get traffic signals
local tag = node:get_value_by_key("highway")
if tag and "traffic_signals" == tag then
traffic_lights = true
if entering_highway == "residential" and crossing_highway == "primary"
and not traffic_lights then:
crossing_penalty = some_large_number
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the OSRM-talk