OSM Tools
dutch german en francais spanish spanish polish russian

Tricks & Tips with mkgmap styles

More Tricks

How to show place names in zoom levels without cluttering your map

Cities Cities & Large Towns & County name Added small towns

Aim :

How?

1) Make a plan for all your zoom levels

2) Remove all place references in the default style

3) Set Mapsource/Basecamps 'detail level' to medium

5) Show essential boundaries (national , provinces)

4) Set fonts to no_label, default or large

Plan for zoom levels

Level Boundary Places Lines Polygons
10 - 20 national Capital    
15 - 20 national Cities / admin_level <4 motorways  
16 - 20 national Towns >50 000 etc residential
17 - 22 national,provinces Towns > 20 000   etc
18 - 23 national,provinces Towns    
21 national,provinces Villages    
22 national,provinces Suburbs    
24 national,provinces Hamlet &Locality    
         

You can create a new file called places and add it to your points file:

include 'inc/places';

place=* & capital=yes [0x0200 resolution 10-20]# name disappears at level 21 etc
(place=city |place=* & admin_level<4) [0x0300 resolution 15-20]
place=town & mkgmap:area2poi!=true & population>=50000 [0x0400 resolution 16-20]
place=town & mkgmap:area2poi!=true & population>=20000 [0x0500 resolution 17-22]
place=town [0x0600 resolution 18-23]
place=village [0x0c00 resolution 21 ]
place=suburb [0x0a00 resolution 22 ]
place=hamlet |place=isolated_dwelling [0x0b00 resolution 24 ]
place=locality [0x01F02 resolution 24]

#add country names
place=country [0x1500 resolution 12-19]

# add province only applies to certain countries
place=county (0x1500 resolution 17-19]

Font Styles

Garmin Topo maps use no_label to hide names in polygons when zoom levels are <20

The trick is to use two polygons:

You may want to use a different font style for villages ; we decided to make our village names large.

How to create boundaries

In your lines file add

You need to google the level appropriate to your country.

boundary=national [0x1e resolution 18 continue]

boundary=administrative & admin_level<7 [0x11b0f resolution 16-17 continue]

boundary=administrative & admin_level<8 [0x11b0f resolution 18-20 continue]

# add continue else it doesn't do the highways or rivers