Discussion:
[mkgmap-dev] don't route through highway=construction
Ben Konrath
2015-10-10 17:29:05 UTC
Permalink
Hi,

A while ago a user reported that they were being routed through a closed
highway. The highway in question was marked as highway=construction. What's
the best way to ensure that you don't get routed through the path that's
created in the default style when a way is marked as highway=construction?
I'm not able to test this easily because the highway is now back in service.

I've attached a patch that adds access=no to the highway=construction rule.
Is this a good way to prevent routing through highway=construction roads?

Thanks, Ben
Gerd Petermann
2015-10-11 10:00:23 UTC
Permalink
Hi Ben,

quite difficult. My understanding is that a road should have something like access=no if the
construction work means that the road is closed. If the road is open for traffic it probably
means something like surface=unpaved and descreased maxspeed, but not access=no .
So, I'd rather add "set upaved=yes" to the rule.

Gerd

Date: Sat, 10 Oct 2015 19:29:05 +0200
From: ***@bagu.org
To: mkgmap-***@lists.mkgmap.org.uk
Subject: [mkgmap-dev] don't route through highway=construction

Hi,

A while ago a user reported that they were being routed through a closed highway. The highway in question was marked as highway=construction. What's the best way to ensure that you don't get routed through the path that's created in the default style when a way is marked as highway=construction? I'm not able to test this easily because the highway is now back in service.

I've attached a patch that adds access=no to the highway=construction rule. Is this a good way to prevent routing through highway=construction roads?

Thanks, Ben
nwillink
2015-10-11 17:34:26 UTC
Permalink
I would personally assign highway=construction a non routable type, ie
0x10100
This works for me



--
View this message in context: http://gis.19327.n5.nabble.com/don-t-route-through-highway-construction-tp5856734p5856776.html
Sent from the Mkgmap Development mailing list archive at Nabble.com.
Ben Konrath
2015-10-13 14:23:16 UTC
Permalink
Thanks for the suggestion Nick. I may end up doing this all thought I'm
trying to keep my style as close to the mkgmap default as possible so that
I can contribute fixes and updates as I find them.

Ben

On Sun, Oct 11, 2015 at 7:34 PM, nwillink <***@pinns.co.uk> wrote:

> I would personally assign highway=construction a non routable type, ie
> 0x10100
> This works for me
>
>
>
> --
> View this message in context:
> http://gis.19327.n5.nabble.com/don-t-route-through-highway-construction-tp5856734p5856776.html
> Sent from the Mkgmap Development mailing list archive at Nabble.com.
> _______________________________________________
> mkgmap-dev mailing list
> mkgmap-***@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
>
Ben Konrath
2015-10-13 14:22:00 UTC
Permalink
Hi Gerd,

According to the OSM wiki, highway=construction means that the road is
closed. construction=minor with the other highway tags unchanged means that
the road is still open.

https://wiki.openstreetmap.org/wiki/Key:construction

> For minor road-works (where the road in question remains open), use
construction=minor (and don't use highway=construction, but leave it at its
default value).

So I still think that disabling routing or making access=destination would
be the best option. Do you have any further thoughts? It's ok if you
disagree, I can always change it my style. :)

Thanks, Ben

On Sun, Oct 11, 2015 at 12:00 PM, Gerd Petermann <
***@hotmail.com> wrote:

> Hi Ben,
>
> quite difficult. My understanding is that a road should have something
> like access=no if the
> construction work means that the road is closed. If the road is open for
> traffic it probably
> means something like surface=unpaved and descreased maxspeed, but not
> access=no .
> So, I'd rather add "set upaved=yes" to the rule.
>
> Gerd
>
> ------------------------------
> Date: Sat, 10 Oct 2015 19:29:05 +0200
> From: ***@bagu.org
> To: mkgmap-***@lists.mkgmap.org.uk
> Subject: [mkgmap-dev] don't route through highway=construction
>
>
> Hi,
>
> A while ago a user reported that they were being routed through a closed
> highway. The highway in question was marked as highway=construction. What's
> the best way to ensure that you don't get routed through the path that's
> created in the default style when a way is marked as highway=construction?
> I'm not able to test this easily because the highway is now back in service.
>
> I've attached a patch that adds access=no to the highway=construction
> rule. Is this a good way to prevent routing through highway=construction
> roads?
>
> Thanks, Ben
>
> _______________________________________________ mkgmap-dev mailing list
> mkgmap-***@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
>
> _______________________________________________
> mkgmap-dev mailing list
> mkgmap-***@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
>
Greg Troxel
2015-10-13 14:34:01 UTC
Permalink
I agree that 'highway=construction' should be omitted from routing.
That to me indicates "they are building a road but it is not usable".
If the default style routes over that, it's just a bug and should be
fixed.
Gerd Petermann
2015-10-13 15:12:01 UTC
Permalink
Hi all,

okay, seems I got that tag wrong and so I agree that we should not route through these roads.
The question is how to achieve that behaviour.
The clause setaccess=no will not work if the way has a tag like vehicle=yes or foot=yes,
as it only sets the mkgmap:* tags.
Extended types are also taboo for the default style.

Possible solution:
Internally, mkgmap already uses a flag called skipAddToNOD.
When true, the road is used for address search, but is not added to the
NOD sub file and therefore will not be routable.
I can add a new tag mkgmap:add-to-NOD=false for this.

Gerd

From: ***@ir.bbn.com
To: ***@bagu.org
Date: Tue, 13 Oct 2015 10:34:01 -0400
CC: mkgmap-***@lists.mkgmap.org.uk
Subject: Re: [mkgmap-dev] don't route through highway=construction


I agree that 'highway=construction' should be omitted from routing.
That to me indicates "they are building a road but it is not usable".
If the default style routes over that, it's just a bug and should be
fixed.
Greg Troxel
2015-10-13 15:37:04 UTC
Permalink
Gerd Petermann <***@hotmail.com> writes:

> The clause setaccess=no will not work if the way has a tag like vehicle=yes or foot=yes,
> as it only sets the mkgmap:* tags.

That's an interesting point.

In the US, it's almost 100% true that a highway=construction is also
more or less marked as "no trespassing". So
highway=construction foot=yes
sounds funny to me. Highways under construction are scary places with
heavy equipment and large amounts of dirt are moved around all the
time. I would expect to get maybe almost arrested if walking in one, or at
least told to get out and stay out.

But if there were a highway project that was unusable by cars and people
really were allowed to walk on it, then that could make sense, and I
could see it being added to routing with car=no and foot=yes.

(If the road is usable, then it isn't highway=construction.)

Are there really situations like that (as opposed to a path alongside
the construction)? I am asking because if it's just that
'highway=construction is completely ignored for routing' is good enough,
it's probably easier.
Richard Welty
2015-10-13 16:24:09 UTC
Permalink
On 10/13/15 10:34 AM, Greg Troxel wrote:
> I agree that 'highway=construction' should be omitted from routing.
> That to me indicates "they are building a road but it is not usable".
> If the default style routes over that, it's just a bug and should be
> fixed.
>
last time i looked highway=construction didn't imply access at all,
leaving it
to the mapper to set access= appropriately.

this makes sense, because sometimes construction is impassible and sometimes
it's not.

unfortunately, the wiki doesn't really explain this and what mappers and
data
consumers are actually doing seems variable and inconsistent.

richard

--
***@averillpark.net
Averill Park Networking - GIS & IT Consulting
OpenStreetMap - PostgreSQL - Linux
Java - Web Applications - Search
Greg Troxel
2015-10-13 23:22:06 UTC
Permalink
Richard Welty <***@averillpark.net> writes:

> On 10/13/15 10:34 AM, Greg Troxel wrote:
>> I agree that 'highway=construction' should be omitted from routing.
>> That to me indicates "they are building a road but it is not usable".
>> If the default style routes over that, it's just a bug and should be
>> fixed.

> last time i looked highway=construction didn't imply access at all,
> leaving it to the mapper to set access= appropriately.

It doesn't explicitly, but there's a strong implication that
highway=construction is for unusable roads - because construction=minor
is for usable roads with construction activity. Quoting:

For minor road-works (where the road in question remains open), use
construction=minor (and don't use highway=construction, but leave it at
its default value).

> this makes sense, because sometimes construction is impassible and
> sometimes it's not.

repairs and resurfacing etc. are generally passable and that's what
construction=minoris for. A new road that has been proposed and is now
being built is essentially never passable. Or once it is, it's time to
retag it has highway=secondary or whatever and add construction=minor.

> unfortunately, the wiki doesn't really explain this and what mappers
> and data consumers are actually doing seems variable and inconsistent.

True, it's a mess like all things wiki :-)
Loading...