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-r3996 add test to avoid rare NPE in HousenumberGenerator.useAddrPlaceTag().
    11 sep 2017
  • mkgmap-r3995 default style: ignore highway=stopline.
    24 aug 2017
  • mkgmap-r3994 default style: change handling of place=island and place=islet in polygons.
    20 aug 2017
  • mkgmap-r3993 don't create shop POI for shop=no or shop=none.
    16 aug 2017
  • mkgmap-r3992 add check to avoid NPE.
    15 aug 2017
See more...