logo separator

[mkgmap-dev] Commit r4397: implement and document new option --is-in-landuse=value[, value...]

From Gerd Petermann gpetermann_muenchen at hotmail.com on Tue Dec 17 13:32:17 GMT 2019

Hi Ticker,

I agree it would be good to know.
Problem: it would require a completely different implementation and probably a lot more CPU power to compute that information.

The current test is very lazy, it works like the one for the mkgmap:admin_level tags. It computes a single point that represents the OSM element
and checks if that point is within or on the boundary of any landuse=x polygon. I think that was OK for the original problem (building inside landuse=residential),
but it was already problematic with the idea to set a maxspeed value for a major highway "inside" a residential area.

So, what results do we get?
- A point is either outside, inside or on the boundary of a polygon.
- A line or polygon can be outside, inside, on the boundary or partly overlapping a single polygon. What would be the result for a way that builds a part of the boundary of two natural=wood multipolygons? What would be the result when the way crosses such a boundary, but is always inside one of the natural=wood polygons? Also, a way can be inside one polygon and partly inside another, as OSM allows overlapping polygons.
Think of a landuse=forest multipolygon with an inner way natural=water . Is the inner way inside, outside or on the boundary?
Remenber, the hook doesn't "see" the multipolygon, it processes the results of the MultipolygonCutter.

For JOSM I've implemented some area operators like a inside b or vice versa, also a not inside b, but they only work on nodes and polygons, and they are rather slow.
See https://josm.openstreetmap.de/ticket/10391
I assume you have something similar in mind?

Gerd




________________________________________
Von: Pinns UK <osm at pinns.co.uk>
Gesendet: Dienstag, 17. Dezember 2019 13:08
An: Gerd Petermann; mkgmap-dev at lists.mkgmap.org.uk
Betreff: Re: AW: [mkgmap-dev] Commit r4397: implement and document new option --is-in-landuse=value[, value...]

Hi Gerd

That would be very useful

r

Nick

On 17/12/2019 11:15, Gerd Petermann wrote:
> Hi Nick,
>
> OK, I already expected this when I asked if landuse is enough...
> I'll add code to support all polygons and see how to document it. I guess it should be no problem when I revert the changes in r4397.
>
> Gerd
>
> ________________________________________
> Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag von Pinns UK <osm at pinns.co.uk>
> Gesendet: Dienstag, 17. Dezember 2019 11:53
> An: mkgmap-dev at lists.mkgmap.org.uk
> Betreff: Re: [mkgmap-dev] Commit r4397: implement and document new option --is-in-landuse=value[, value...]
>
> Hi Gerd,
>
> Oops, I forgot to look at the documentation!
>
> Personally , I think it is such a useful option which will open up a host of new possibilities when/if you are able to extend this to include all polygons.
>
> Again, thanks for all your hard work!
>
> Nick
>
> On 17/12/2019 09:42, Pinns UK wrote:
>
> Hi Gerd
>
> I've been able to change footpaths on (some?)  amenity graveyards to paths by just setting the lu:cemetery to yes
>
> I first tried :
>
> amenity=grave_yard {set landuse=cemetry;echotags"change2landuse"}
>
>    mkgmap:lu:cemetery=*  & highway=footway  {set highway=path}
>
>
> however this did not work , ie footpaths on cemeteries didn't change to paths  and the echotags didn't show any :lu:cemetery
>
> then I tried
>
>   amenity=grave_yard {set mkgmap:lu:cemetery=yes}
>
>    mkgmap:lu:cemetery=*  & highway=footway  {set highway=path}
>
>   This seems to work for some (?)  graveyards (Haven't checked this on 2 graveyards only)
>
> My question is ,does mkgmap check if highways cross a polygon   as soon as it parses mkgmap:lu:cemetery=*  & highway=footway
>
> or are the checks done before 'Lines' are parsed?
>
> If the user can set the value then what ,if any ,are the effects - ie
>
> natural=wood { set mkgmap:lu:cemetery=yes}
>
>   If this works then Arndt seems to have a point?
>
> r
>
> Nick
>
>
> Does mkgmap check if graveyard
>
> On 15/12/2019 12:28, Arndt Röhrig wrote:
> is-in-landuse, nice function!
>
> with this new option i set acces=no for bicycles when the way is within a cemetary. (& no tag say, that bicycle is ok)
>
> There are still a few polys where that could be used. amenity=grave_yard, amenity=hospital, leisure=pitch ....
>
> maybe its better to name the option is-in-polygone:polygone=value
>
> Arndt
>
>
>
> svn commit < svn at mkgmap.org.uk<mailto:svn at mkgmap.org.uk>> hat am 15. Dezember 2019 um 10:05 geschrieben:
>
>
> Version mkgmap-r4397 was committed by gerd on Sun, 15 Dec 2019
>
> implement and document new option --is-in-landuse=value[,value...]
> - svn rename ResidentialHook.java to LanduseHook.java
> - remove support for undocumented option --residential-hook=false
> - warn if style uses mkgmap:residential which was replaced by mkgmap:lu:residential
>
>
> http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=4397
> _______________________________________________
> mkgmap-dev mailing list
> mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk>
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
> On 15/12/2019 09:05, svn commit wrote:
>
> Version mkgmap-r4397 was committed by gerd on Sun, 15 Dec 2019
>
> implement and document new option --is-in-landuse=value[,value...]
> - svn rename ResidentialHook.java to LanduseHook.java
> - remove support for undocumented option --residential-hook=false
> - warn if style uses mkgmap:residential which was replaced by mkgmap:lu:residential
>
>
> http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=4397
> _______________________________________________
> mkgmap-dev mailing list
> mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk>
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
>
>
>
>
> _______________________________________________
> mkgmap-dev mailing list
> mkgmap-dev at lists.mkgmap.org.uk<mailto:mkgmap-dev at lists.mkgmap.org.uk>
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


More information about the mkgmap-dev mailing list