logo separator

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

From Gerd Petermann GPetermann_muenchen at hotmail.com on Sun Mar 27 20:37:12 BST 2016

Hi Greg,


you say that you use r3674, not the patched r3673.

Please use this binary:

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


Gerd


________________________________
Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag von greg crago <gregcrago at gmail.com>
Gesendet: Sonntag, 27. März 2016 20:50
An: Development list for mkgmap
Betreff: Re: [mkgmap-dev] [Patch v1] change process-destination option

I am not getting an empty string for a destination tag that does not exist.

I am using mkgmap r3674 and using the DEFAULT style with one line added at the top of the line file:

highway=* { echo 'BEFORE destination=${destination}'}

Upon execution, the command prompt window shows:
BEFORE destination=Beck Road

I expected the string would be empty, since no destiantion tag exists.

Attached is the osm.pbf file

The patch was suppose to:

1) the tag destination is not changed by mkgmap

Am I missing something?

Greg

On Wed, Mar 23, 2016 at 7:37 PM, Alexandre Loss <alexandre.loss at gmail.com<mailto:alexandre.loss at gmail.com>> wrote:
Hi Gerd,

Nothing regarding the limits of 10m.
I'm only saying that I keep mkgmap:exit_hint=true in my "lines" and it continues perform as expected.

[],

Alexandre

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

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<mailto:mkgmap-dev-bounces at lists.mkgmap.org.uk>> im Auftrag von Alexandre Loss <alexandre.loss at gmail.com<mailto: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


_______________________________________________
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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20160327/98da716d/attachment.html>


More information about the mkgmap-dev mailing list