logo separator

[mkgmap-dev] [index] Automatic location completion

From WanMil wmgcnfg at web.de on Thu Mar 3 19:40:31 GMT 2011

I have improved calculation of the country information. In case no 
country information is available the most used country in a tile is used 
for all elements without country tag.

The patch now patches the trunk and no longer the index branch.

I have observed that lots of POIs are assigned the default country 
although I they are assigned a different country. I have no clue where 
this happens.
Maybe an index related problem? I was hoping that Steves commit today 
would fix that problem but it didn't.


> I have done some development and want you to share my current findings.
> 1. The MapElement copy constructor seems to have a bug. The attributes
> map which contains the city, region and country information is not
> copied. From my point of view this is an important thing that should be
> fixed in the trunk also.
> 2. In the patch the Locator is disabled as much as it was possible for
> me up to now.
> 3. I am using now separate tags (mkgmap:city, mkgmap:region etc.).
> I recommend to run this patch with location-autofill=-1 or 0 to see how
> the patch works and not how the old Locator works.
> WanMil
>> After the index branch has been developed so far that we can use the
>> results in MapSource (thanks to Steve!!) there is a big need for a
>> mechanism to fill missing location information.
>> There has been a lot of discussion about that. It stopped because it was
>> quite theoretical (from my point of view). Therefore I have started to
>> implement a prototype osm hook that tries to complete the missing
>> location information. I think the is_in tag is quite problematic
>> therefore I decided to use the addr tags.
>> Attached is a *very* early implementation that makes use of the boundary
>> polygons. It checks all nodes and ways/polygons within all boundary
>> polygons and fills the missing addr tags.
>> I think this is a better foundation for the discussion how we want to
>> fill the missing location information.
>> Before flaming me about terrible code please be aware that:
>> * the patch is not optimized
>> * it's version 1, so far away from handling all situations / countries
>> * it's a very early prototype
>> I would be happy if you try it and make some proposals how it could be
>> improved.
>> Some improvements I already know and thinking about:
>> * The new hook should run after the multipolygon finishing and not before
>> * The is_in tag should be handled
>> * boundary information propagation => First go through all boundaries
>> and add the information from higher levels to lower ones, i.e. add
>> addr:district to all city boundaries within that district
>> * Use landuse=residential information in combination with the place nodes
>> * In case a boundary level is missing (which mostly will be the case for
>> countries admin_level=2), select the addr information from all nodes and
>> ways within a boundary by using the most used addr-tag value. (in
>> germany the addr:country=DE should be the most used)
>> Have fun!
>> WanMil

-------------- next part --------------
A non-text attachment was scrubbed...
Name: index_location_v3.patch
Type: text/x-patch
Size: 38629 bytes
Desc: not available
Url : http://lists.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20110303/e7568887/attachment.bin 

More information about the mkgmap-dev mailing list