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 :
- Clearly show essential place names
- The smaller the level the larger the city/town
- When zooming in to a large city decide at what level a name is not essential
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