logo separator

Converting units

24
Nov

There has always been a way to convert a tag value from meters to feet, this was originally for contour heights which need to be in feet, but the default for OSM is for them to be in meters.

With the release of version r3353 these conversions are much more useful and can be applied to speeds as well as lengths. They also take into account any unit that is already specified.

So for example if you specify a conversion of meters to feet, then "100" will be converted to "328", "100m" will be converted to "328" but "100ft" will be left as "100". Furthermore "100km" would result in "328000". If any of the units are not recognised then the value remains completely unchanged.

Input Result
100 328
100m 328
100ft 100
100km 328000
100xyz 100xyz

Here are some examples.

natural=hill & height=* {
	set height='${height|conv:"m=>ft"}';
    }

highway=* & maxspeed=* {
	set limit='${maxspeed|conv:"kmh=>mph"}';
    }

The possible units are:

  • Length: m, km, ft (feet), mi (miles).
  • Speed: mph; km/h (or kmh, kmph), knots
Posted by steve on 24 Nov 2014

Latest commits

  • mkgmap-r3867 refactoring, no functional change: simplify code to add background polygon (type 0x4B).
    26 mar 2017
  • mkgmap-r3866 code cleanup: remove undocumented partial implementation of option contours (SRTM data)..
    25 mar 2017
  • mkgmap-r3865 code cleanup, no functional change: Create OverviewMapDataSource instance in OverviewBuilder instead of Main.
    25 mar 2017
  • mkgmap-r3864 refactoring, no functional change: rewrite code which was intended to implement a plugin system for OSM readers.
    24 mar 2017
  • mkgmap-r3863 code cleanup, no functional change.
    23 mar 2017
See more...