Worldwide routable Garmin maps: URL REMOVED

Some new tweaks to use the resources more efficiently (hopefully):

  • The color/presence of the notification text (urging users to behave nice) is now dependent on the queue length.

  • The service now detects in all stages whenever a combination of tiles is actually a country combination, even when the user adds/removes tiles using manual tile selection. Countries are cached longer then the other requests (currently only 12 hours, but this can be tuned further).

A new version is released which uses a new tile-vs-countrypolygon matching algorithm. In previous versions there were always predefined countries that missed tiles or used too many tiles. The new matcher fixes this. It was especially a lot of work to efficiently handle corner cases like Russia and New Zealand who cross the +/-180 degrees longitude line. Running into -and working around- obscure bugs in libraries also took quite some time to figure out.

Anyway, I’m very happy with the results :slight_smile:

Did you abandon matchit already a long time ago?

About a month ago I guess…

Edit: nope, already two months ago.

One of the neat functions of the new PHP Matchit script is that it can output an image of a polygon selection (cortesy of the polygon PHP class). This class isn’t perfect (the bugs that needed working around I mentioned earlier) and it’s quite slow: it takes 20 minutes on a not-too-fast Xeon single core to match the countries. But I can work around that in a next version that uses threads which should provide an almost linear speedup with the amount of cores available.

Anyway, the images, I’ve uploaded two examples for you to marvel at :wink:

Brazil:

Thailand:

The blue boxes are the polygons that define a country (they don’t need to be rectangles as e.g. the Netherlands is defined as a single large polygon). The black box is the bounding box of the country that is used to prefilter the tiles (this provides an enormous speed improvement over matching each tile against each polygon of ~100x). If a tile passes the country prefilter it will be tested against each polygon in the country definition file. The matched tiles are shown in red.

Awesome, thanks again for this invaluable resource.

I just checked out Thailand and it works just like you say.

How much time do you spend on this project every week? There can’t be much time left to get out on your bike…

Kind regards,
Peter.

Heh, you got me there. I really should be going out on the bike more often. Actually I have an on-off relationship with my projects. I can spend weeks on end working on it straight away when I come home from work until bedtime, like I pretty much did in the last two weeks. But then I get to a stage when the most important stuff is working as I want it and the energy leaves me to work on the project. I then put the project on hibernation and maybe start working on my other projects (OSM and non-OSM related) or relax a bit. Anyway, spring and summer are coming and it looks like the Garmin map service will have to make due until winter again (apart from map upgrades now and then).

Completely missed that.

I do not understand that you still use those rectangle polygons (of cloudmate?).

Why not use real boundary polygons? Like here for Brazil:

Simple answer: because I haven’t found better ones :slight_smile:

Tell me, where are they from?

Anyway, it doesn’t matter anymore (perhaps the might help the processing speed, but not to the final result).

Is there any way Thai can be transliterated? Borders, etc. around there look hideous right now.

Thanks,
Peter.

As far as I know there are no simple rules and many exceptions. Even the “official” tool Chulalongkorn University: Thai Romanization Program is far from being perfect. The method of romanization is changing and even the authorities don’t follow them. Thus you can get different versions from the tool and the sign at the street. In another country there are other rules. Thus the map generation program ought to follow the exact border. I guess currently not doable.

I think the best way is to tag “name” and “name:en”. Where this is done a convenient bilingual map can be created, e.g. in Khon Kaen and the map is still useable if there’s only the local Thai name for some places given, e.g. at Chatuchak. A navigation program can offer switching the map between English and local Thai language, e.g. as Mapfactor Navigator Free does.

I startet using the “Worldwide routable Garmin map” of Thailand not long ago and I like it more and more. As I see it is using name:en, name. This is fine where name:en is given. But where there’s only name in Thai letters I see strange words in roman letters. I don’t know why. Get they converted during the map generation or are non Thai Garmin devices and programs not able to display Thai letters?

Many thanks to Lambertus and the other contributors
Willi

This service has a nice trick up it’s sleeve which -afaik- other OSM Garmin map providers don’t have, namely the addition of a custom transliteration application created by user Greencaps. This transliteration apparently works quite well for e.g. Slavic languages but frankly I don’t know how well it performs for other countries, so I’ll leave the more detailed answers to Greencaps…

And, yes, the way preference is given to OSM English and international names over transliterated and finally a fallback to the OSM name does help a little too.

Well you saw only one… I wrote a program which given the relation id of a country’s border downloads recursivly all containing relations and ways and finally the nodes. Then the individual ways often have to be sorted and some reversed to make it a nice closed loop boundary which I save as a .gpx file. Much later I discovered http://ra.osmsurround.org/analyze.jsp?relationId= which can analyse relations when given a relation id. At the end it offers a download possibility of the ‘border’ as gpx file.

Having these possibilities the bunch of work is to determine -by hand- the relation id’s of the borders.

Yes. Translit could do that too I think. But as I don’t know anything of Thai I did not even start. When there are many ways Thai can be transliterated (as Willi2006 said) then we could still choose one. If you are willing to help me to make a translitertation table then I will make a webpage wilth a Thai alfabet where you can fill in the transliteration (in the english way).

That is very well doable. As you can read in http://forum.openstreetmap.org/viewtopic.php?id=5554 translit was first designed to use country borders for the different languages. But then ‘I found out’ that country borders were not needed as every language occupied its own set of utf-8 characters. I think I can put in some thai-states-borders again. (I said I think. Did not see the code for quite some time now.)

I wish I could help you there, but I don’t read or understand Thai. I had a quick look at the transliteration table on the uni website (following Will’s link), but it looks very complicated.

Interestingly, the maps I compile myself strip out all Thai names in the name field, except for borders. Your maps show labels with long strings of gibberish. I guess we can conclude from that that Garmin MS and devices don’t display Thai characters, except for localised units, of course.

I guess the best thing to do would be for mappers (like myself) to run all Thai-only names through something like Google translate and then create then name:en field. Or should that be name:int?

Can anything be done about the borders?

SW of Yala the border is a complicated looking web of relations and multi-polygons. It’s interesting to note that the name for Malaysia can’t even be displayed in JOSM (it shows as a bunch of squares, this is the result of a copy and paste: မလေးရှားနိုင်ငံ), although Malaysia uses the roman script. I think this is an error.

The name field for the border line itself is Border Thailand - Malaysia, so I don’t know where mkgmap takes all the gibberish from.

Regards,
Peter.

I request for a routable Garmin map from garmin.na1400.info for Hokkaido Island and downloaded from:

<http://planetosm.oxilion.nl/~lambertus/garmin/routable/12-02-2011/27ae955bac04d1fcb5153f0e39f68230>

I found that the eastern part of the Island is not included.

Before this, I downloaded the whole of Japan and the Eastern part of Hokkaido Island was also missing. Any reason?

Will be visiting Hokkaido soon.

This looks more like a font that does not support Malaisian characters. It’s not a ‘i do not understand unicode’ issue. If you could force JOSM to use a different font? Or download the malaisian graphics for the used font?

Could you give an osm link to the island exactly on the line from where on there is no data?

Are you sure the tile from the eastern part was included in ‘your order’?

With all due respect, I think Greencaps is ‘on the problem’ here. I just ordered the same region (albeit a newer map version, but that should have no effect) using my admin super powers to get a quick turnaround time and it works just fine. See the Hokkaido island here or all of Japan here.

Downloaded both Hokkaido and Japan maps, both works fine. Thanks.

You seem to have missed an important part of my post:

There are no Malaysian characters, fonts or scripts. They use the same writing as you and I. This looks like a data error to me, so I just went ahead and corrected it.

I still don’t understand why mkgmap takes the name of the border from relations, rather than the name of the border line itself, but as I don’t understand what these relations do anyway there is no point in me asking on their mailing list. When I upload corrections to this border JOSM always throws a bunch of errors about unknown relation types and empty relations.

Regards,
Peter.

Hi,

These maps are a fantasitc service but I’m having some problems.
I’ve tried searing through the forums to see if others are having this same problem, but damn, this post is 35 pages long.

So, I’m trying to download France & Spain for an upcoming vacation but the maps seem to have missing tiles.
I’ve tried it a few different times, first by selecting the country from the drop-down lists, and then by selecting the tiles manually, but each times there are missing tiles - but not neccesarily the same ones.
Also, for a given download, both the gmapsupp.img file & the mapsource installer have the same areas missing.

Am I doing something wrong? Its getting kinda frustrating as the queue is about a week long.

When was the last time you downloaded a map? I’ve changed the way tiles are matched against country definitions so there should be no missing tiles anymore. Also, I’ve not seen any clear example where the site showed a selected tile while the result did not contain it. So I’ve requested France and Spain. I a few hours we’ll know…

The first bit can be explained by the different updates on the site. The second one scares me a bit :wink:

That is what I would expect, otherwise things would have become spooky.

Edit: I’ve checked France & Spain and both are fine as far as I can see.