logo separator

[mkgmap-dev] [Patch v1] change process-destination option

From Gerd Petermann GPetermann_muenchen at hotmail.com on Wed Mar 23 17:51:23 GMT 2016

Hi Alexandre,


Thanks for testing.

I see no problem with the code for process_exits, I think it only adds

tags with the mkgmap prefix. Do you mean the limits regarding 10m ?


Gerd

________________________________
Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag von Alexandre Loss <alexandre.loss at gmail.com>
Gesendet: Mittwoch, 23. März 2016 17:32
An: Development list for mkgmap
Betreff: Re: [mkgmap-dev] [Patch v1] change process-destination option

Hi Gerd,

After update my local mkgmap with this patch, follow my tests' results (in a small fictitious map):

1) Without change my proprietary style "lines" file, I get the following error as expected:

GRAVE (StyledConverter): 03137600-lagoa_santa.osm: At least one 'lines' rule in the style contains the expression mkgmap:dest_hint=true, it should be changed to mkgmap:dest_hint=*

2) Changing mkgmap:dest_hint=true to *, as directed above, the map was compiled without error and the result works as expected.

Therefore, I think that the patch is working like charm.

I didn't change any exit_hint in lines file and the exits continue working as expected. Are you changing only dest_hint or are you gonna change dest_exit also?

Regards,

Alexandre

2016-03-23 6:07 GMT-03:00 Gerd Petermann <GPetermann_muenchen at hotmail.com<mailto:GPetermann_muenchen at hotmail.com>>:

Hi all,


please read carefully:


Up to now the process_destination option is a bit problematic because

it may add the tag destination=* to an existing OSM element, and I think this

is not good, all tags added by mkgmap should have the mkgmap: prefix.


As Greg pointed out this causes problems for style authors who want to

create special hints depending on tags like destination:street .


The attached patch changes the method like this:

1) the tag destination is not changed by mkgmap

2) Instead the special tag mkgmap:dest_hint is now set to the

destination string that was found in one of the tags listed in this code snippet:

        tags.add("destination");
        tags.add("destination:lanes");
        tags.add("destination:lanes:forward");
        tags.add("destination:lanes:backward");
        tags.add("destination:forward");
        tags.add("destination:backward");
        tags.add("destination:street");


(BTW: This is also the order of evaluation in mkgmap searches since r3673, of cause

forward/backward are checked depending on the direction of the way)


For style authors this means that they have to

1) change all rules with mkgmap:dest_hint=true to mkgmap:dest_hint=*

2) change the rule that produces the hint to something like this:
mkgmap:dest_hint=*
  { set dest_hint = '${destination:ref|subst: =>} ${mkgmap:dest_hint|subst:;=> |subst:/=> }' |
         '${ref|subst: =>} ${mkgmap:dest_hint|subst:;=> |subst:/=> }' |
         '${mkgmap:dest_hint|subst:;=> |subst:/=> }';
       }

Basically all places where "destination" was used were changed to mkgmap:dest_hint.


I am aware that this could cause trouble, so I've added a check that complains when

the style contains an expression mkgmap:dest_hint=true .


A binary can be found here:

http://files.mkgmap.org.uk/download/295/mkgmap.jar


With the default style this produces the same img file as r3673.

Please let me know if you see problems with your style.


Gerd

_______________________________________________
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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20160323/1c1a2e4f/attachment.html>


More information about the mkgmap-dev mailing list