logo separator

[mkgmap-dev] Splitting an country borders?

From Robert Vollmert rvollmert-lists at gmx.net on Wed Sep 16 09:17:17 BST 2009

On Sep 16, 2009, at 09:42, Marko Mäkelä wrote:
> I seem to remember someone mentioning that Garmin supports non- 
> rectangular
> map tiles.  Would that help?  Or would it be too much effort with  
> too little
> gain to implement that in mkgmap (and splitter)?

> Am 16.09.2009, Carsten Schwede wrote:
>> What need mkgmap special to enable routing between tiles? I would  
>> like
>> to use this special also in the cutting program I use for creating a
>> completely routable worlmap...

On Sep 16, 2009, at 09:14, dom at team-oid.de wrote:
> I'm currently a bit confused.
> Is it possible to route over mapssets or not?
> I think it's still not working for maps which are splitted without
> splitter.

Since there's some confusion I'll try to summarize, though my  
knowledge may be a little out-of-date.

# IMG format

For routing to work between two different IMGs, the nodes on the  
"boundary" need to be marked specially. Here, "boundary" is in theory  
just the nodes where both routing graphs meet. These don't necessarily  
need to lie on the edge of the map, and the map doesn't necessarily  
need to have a rectangular shape.

AFAIK, it should be possible to route using two tiles where one  
contains a country's motorway network and another contains the lower- 
class roads, with boundary nodes at the motorway ramps. It may well be  
that the routing algorithm expects a different, tile-like separation,  
however.

It's unlikely that a tile needs to be rectangular, but it may well be  
that a tile should be convex (geographically and/or with respect to  
the routing graph).

# mkgmap

Mkgmap needs to know which nodes to mark as boundary nodes.

The simple way is to just tell mkgmap, which is what happens when  
using polish (.mp) input, where you flag boundary nodes. If you want  
to test some of the above speculation, creating appropriate .mp files  
is probably the easiest way to go.

For .osm, mkgmap determines boundary nodes itself. Here lies the  
restriction to rectangular tiles: The .osm input needs to contain a  
<bounds>-element specifying the desired bounds of the output IMG. The  
OSM data itself need not be contained within the <bounds>-element.  
mkgmap clips all geometry to these bounds and generates boundary nodes  
wherever ways are clipped (there's probably lots of special cases here).


Cheers
Robert




More information about the mkgmap-dev mailing list