experimental OpenStreetMap renderer. Despite its name it is used for rendering of earth surface mostly.
Work in progress. See introduction post.
NEW - I started working on more usable version - lunarender3 (based on vector tiles).
- input format: OSM XML, Overpass API JSON output
- output format: SVG
- rendering rules scriptable with lua
- no need for installing Postgres
Download source package and unzip it. Binaries for windows are already included.
For installation under linux see this issue.
Some rendering rules uses Symbola font, it's better to install it otherwise you got mojibake.
- go to OpenStreetMap, select some nice place and export it
- drop exported XML file to LunaRender working directory
- run
cmdhere.bat
(or addlunarender.bat
toPATH
) - call
lunarender map.osm
from command line
- go to Overpass turbo and enter your query. Note: you have to include
[out:json]
and[bbox:{{bbox}}]
in your query. - export data as raw data
- drop exported JSON file to LunaRender working directory
- run
cmdhere.bat
(or addlunarender.bat
toPATH
) - call
lunarender export.json
from command line
- input file name - required
- rendering rules file name - default
rules/default.lua
- zoom - default
15
Rendering rules are written in lua.
Currently there is no documentation about rendering rules. You have to look into source code of demo rules.
- Joe Schwartz for this article. I got projection code from there.
- Igor Brejc for Maperitive. This is great inspiration for me.
- Matthew Wild for LuaExpat
- David Kolf for dkjson
- Paul Kulchenko for Serpent
- LuaDist authors
- lua authors for great language
- and finally all OpenStreetMap contributors for test data
default style
technology demo