Generation of vector maps from OpenStreetMap data, for use in laser cutters for producing tactile maps.

Press the rectangle button, select a rectangle on a map and wait. Note that this tool will work well with tiny areas, such as a single crossing.

This map style requires an area to be mapped with area:highway, otherwise it will not work.

See also other map styles, allowing generation of other maps from the same OpenStreetMap data. One of available generates laser cut designs for 3D maps, without need of area:highway mapping.

(there is more text below the map, you can also see an animation showing how this tool is supposed to work)

please send an email to if replacing this placeholder alt attribute of image by a real alt attribute would be useful for you

OpenStreetMap data (ODbL licensed) and this map style combined to make a 3D tactile map for the blind.

Map style is generating SVG design files for use in a laser cutter. Intended for making orientation maps for blind people of a very small area, such as a single road crossing.

Have fun with using OpenStreetMap data for interesting and/or useful purposes! Just remember that you must mention the source of data in a way visible to whoever will be using it. See this page for details, including cases where it is legally allowed to avoid giving a clear credit (but I encourage to do this in all cases).

If you liked this tool, something was confusing - you are welcomed to comment about it by creating a public issue or by sending me an email. You can also post a comment in OSM diary entry.

If you want to help mapping and you are unsure how to start - you can try StreetComplete (an Android app) allowing contributions, with sole requirements being (1) ability to read (2) ability to see things (3) ability to create an OpenStreetMap account.

If you want to map something (map missing objects, fix a mistake) and you are unsure how to start - visit, zoom in to an interesting area and press the "edit" button and follow instructions. You can contact the OpenStreetMap community using one of global or local channels listed at and ask for help.

You can visit matkoniecz/lunar_assembler to see code, obtain code or contribute. This software is AGPLv3 licenced.


Laser parameters

laser parameters that I used are given below, but this is a solely example! You will need to test it on laser cutter you use which parameters are optimal.

Produced SVG is intended to be copied and used for multiple cuts:

  1. Empty base area, to keep elements together
  2. Base layer:
    • engraving road areas surface with own pattern - 400 speed 40 power 0.08mm line interval on laser that I used
    • cutting road areas from other areas (necessary to paint it properly) - ???
    • everything else - quick delicate burn to indicate where given elements should be glued - ?????
  3. separate cuts of footway areas and crossing - I cut them into plexiglass to achieve clearly different surface in touch. I considered using leather or cork. For transparent plexiglass it is possible to spray-paint its bottom to change it colour to a desired one
  4. separate cut for buildings, I used thick plywood to make it clearly distinct
  5. separate cut for steps from plywood. This is a a quite tricky layer: first of all area:highway is processed and split into symbolic areas
    • outer shape surrounding entire steps area: should cut through to produce a separate piece
    • symbolic steps - should be engraved as areas, each with increasing power to burn wood to a different depth.
      1. 20% power, 1 repetition, line interval 0.08mm
      2. MAX power (80% on this specific laser), 1 repetitions, line interval 0.08mm
      3. MAX power, 2 repetitions, line interval 0.08mm
      4. MAX power, 3 repetitions, line interval 0.08mm