Worldwide routable Garmin maps: URL REMOVED

That’s why I initially said that NSIS isn’t a serious option for the gmapsupp.img, only for installing the MapSource version. No additional applications are needed for that, neither JAVA/mkgmap or Sendmap20. Besides the complexity, it doesn’t save CPU cycles or disk space on the server which this is all about. But -in theory- an NSIS installer could be an all-you-need option for Windows users.

But, on second thought, Sendmap20 would be better and easier to use for uploading to the GPS then Mkgmap. It could also be used as an extra step in the MapSource installer (Install the map in MapSource and/or send the map to the GPS).

My idea: Most people who ‘order’ a map will not be OSM contributers. And if they are will use potlatch.

Ok. But then this setup.exe has to be generated on Lambertus’ site and then downloaded. This has to be ‘ordered’ too. So again a possibility for a queue. And is it possible for NSIS on a Linux computer to generate an installer for Windows?

I would not pack mkgmap in that exe file. Only the urls where to download mkgmap. The exe would then download and install. The same for java. But what a hassle.

Now who is downloading the tiles??

mkgmap is overkill.

What I miss in this scenario is that if the ‘orderer’ comes back some months later to ‘order’ other tiles how that would go. All software is already on his computer. So only tiles have to be downloaded. Please explain.

But then you have to place all tiles on your server and provide an equal nice interface as Lambertus’ where the tiles can be manually selected on a map. But I agree except for needing java and mkgmap.

Greencaps, what makes you so negative about mkgmap? I don’t understand why there will be a queue just for downloading a 1,5mb programm?
The setup.exe can be a general one. It has to be compiled once but thats it. In the setup.exe there will be the latest mkgmap, a few or just one general typ file, and a bunch of instructions what to do with the downloaded img that the user himself will download from Lambertus site. With the selected tiles they are downloading, comes a small setup.exe file that will install those tiles into mapsource and / or make a gmapsupp.img. Ok, you can make this installer as sophisticated as you want, maybe let this installer downloads the tiles, but that seems to me far more complicated.
Sorry, dont have any knowledge about Linux.

Mkgmap is not overkill when it comes to making an index file for mapsource. I think it should be used because other programms like mapsettoolkit will fail to make a good index from the tiles.
And I think its better to include mkgmap because there are several versions of this and the tiles that Lambertus has generated must be in correspondence with the right mkgmap version.

If someone wants to order a map for free we can ask some effort for this service (=installing java). Better this than waiting for days for your free lunch.

When a user comes back later to add more maps, it is very likely that the tiles are not the same anymore. Thats a big issue for which I haven’t found yet a good solution, other
than uninstalling all the previously installed maps. :frowning:

Mkgmap is a very nice program. I was not negative about it in any way (ehh… well… transliteration is not it’s strength … ha ha). But I would not use it in the context we are talking about as sendmap20 would do all so much easier. Moreover I’m focussing on users who only want to generate a gmapsupp.img where you want them to be able to all kind of things with mapsource.

No no no. We are talking here about a possibility to download the tiles not manually. A download program will be used.

How will they download the tiles and that exe?

That exe is sendmap20 as that is all that you need once the tiles are on your computer.

That was the first thing the OP wanted to let it do…

Sorry. That was not the problem I had in mind. See my earlier post.

Edit by Lambertus: I moved an offtopic discussion about the sendmap20 alternative Gmaptool to a topic of it’s own: Here.

Lambertus,

I will be travelling the world in an expedition vehicle, and offline (laptop) navigation is one of my requirements. I’m currently using nroute and mapquest. Is there any way to download all maps (besides the obvious - select all)? If necessary, I can select a bunch (or all) countries, but I understand that’s pushing it as far as resources are concerned.

A first rough version is now implemented. Seems to work fine. Start hitting that F5-key y’all :smiley:

Note: Only works for new requests…

I’m sorry but bad behaviour of users in the past made me disable the option to download all maps easily. Probably the best solution is to request all countries you’re about to visit and which you can’t already download immediately. It involves a bit of work and waiting time from you, but that’s how it is unfortunately…

Surely you mean Mapsource, not Mapquest? I wouldn’t download too many tiles in advance, as data is added all the time (until they delete all the data from people who didn’t agree to the new licence…). Just download what you need for the next couple of weeks, then go to an internet connection and download more. Uninstall the old tiles before installing the new ones.

Cheers,
Peter.

oops, yeah mapsource… duh.
thanks both for the feedback!

Note: I’ve reduced the map caching time from 42 to 36 hours in order to speed the queue up a bit. Please make sure to download the map quickly after you’ve received the map-is-ready notification email.

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.