Generates a overview image of a minetest map.
Go to file
sfan5 25d1d43004 Update colors.txt 2017-06-06 12:57:00 +02:00
util/travis Automatically use C++11 features when available and remove USE_CXX11 flag 2016-10-06 00:09:06 +02:00
.gitignore Add CPack files to .gitignore 2014-04-15 16:11:41 -04:00
.travis.yml Automatically use C++11 features when available and remove USE_CXX11 flag 2016-10-06 00:09:06 +02:00
AUTHORS Add license (BSD license) 2014-03-05 21:49:08 +01:00
CMakeLists.txt Write manpage based on README. 2017-01-17 19:05:15 +01:00
COPYING Clarify license situation (closes #26) 2016-08-09 16:18:04 +02:00
Image.cpp Code style & comments 2016-11-18 23:57:09 +01:00
Image.h Fix drawing of transparent nodes without --drawalpha (fixes #41) 2017-01-05 23:37:21 +01:00
PixelAttributes.cpp Small refactoring. 2012-09-01 16:17:58 +02:00
PixelAttributes.h Rename some variables to make their purpose clearer 2015-03-18 22:49:19 +01:00
PlayerAttributes.cpp Player attributes moved to separate class. 2012-09-01 16:40:18 +02:00
PlayerAttributes.h Player attributes moved to separate class. 2012-09-01 16:40:18 +02:00
README.rst Update README (postgresql support) 2017-01-08 23:27:45 +01:00
TileGenerator.cpp Add support for recent MapBlock serialization changes 2017-02-17 15:28:01 +01:00
TileGenerator.h Move everything that deals with images directly to an Image class 2016-11-18 23:34:31 +01:00
ZlibDecompressor.cpp Don't use a temporary table for block positions 2014-04-19 02:13:34 -04:00
ZlibDecompressor.h Don't use a temporary table for block positions 2014-04-19 02:13:34 -04:00
autogenerating-colors.txt Update colors.txt 2017-06-06 12:57:00 +02:00
cmake_config.h.in PostgreSQL database support 2017-01-08 23:24:09 +01:00
colors.txt Update colors.txt 2017-06-06 12:57:00 +02:00
config.h PostgreSQL database support 2017-01-08 23:24:09 +01:00
db-leveldb.cpp Better error reporting for LevelDB backend 2014-05-13 14:15:44 +02:00
db-leveldb.h TileGenerator: free database resources (#38) 2016-10-13 23:26:59 +02:00
db-postgresql.cpp Fix Postgres compilation (closes #45) 2017-03-14 13:48:26 +01:00
db-postgresql.h PostgreSQL database support 2017-01-08 23:24:09 +01:00
db-redis.cpp DBRedis: Move some common code into macros 2016-10-21 21:17:43 +02:00
db-redis.h DBRedis: add HMGET 2016-10-21 20:36:21 +02:00
db-sqlite3.cpp DBSQLite3: Do not raise in destructor 2016-10-08 22:02:36 +02:00
db-sqlite3.h TileGenerator: free database resources (#38) 2016-10-13 23:26:59 +02:00
db.h TileGenerator: free database resources (#38) 2016-10-13 23:26:59 +02:00
mapper.cpp Allow rendering (or omitting) scales at every image edge 2016-11-18 22:01:15 +01:00
minetestmapper.6 Write manpage based on README. 2017-01-17 19:05:15 +01:00
types.h Fix travis 2016-11-19 00:01:27 +01:00
util.cpp Improve error reporting if setting is not found 2014-07-08 15:31:01 +02:00
util.h Read backend from world.mt, closes #6 2014-07-08 15:08:07 +02:00

README.rst

Minetest Mapper C++
===================

.. image:: https://travis-ci.org/minetest/minetestmapper.svg?branch=master
    :target: https://travis-ci.org/minetest/minetestmapper

A port of minetestmapper.py to C++ from https://github.com/minetest/minetest/tree/master/util.
This version is both faster and provides more features than the now deprecated Python script.

Requirements
------------

* libgd
* sqlite3
* leveldb (optional, set ENABLE_LEVELDB=1 in CMake to enable)
* hiredis (optional, set ENABLE_REDIS=1 in CMake to enable)
* Postgres libraries (optional, set ENABLE_POSTGRES=1 in CMake to enable)

e.g. on Debian:
^^^^^^^^^^^^^^^

	sudo apt-get install libgd-dev libsqlite3-dev libleveldb-dev libhiredis-dev libpq-dev

Windows
^^^^^^^
Minetestmapper for Windows can be downloaded here: https://github.com/minetest/minetestmapper/releases

After extracting the archive somewhere minetestmapper will be available from cmd.exe:
::

	cd C:\Users\yourname\Desktop\example\path
	minetestmapper.exe --help

Compilation
-----------

::

    cmake . -DENABLE_LEVELDB=1
    make -j2

Usage
-----

`minetestmapper` has two mandatory paremeters, `-i` (input world path)
and `-o` (output image path).

::

    ./minetestmapper -i ~/.minetest/worlds/my_world/ -o map.png


Parameters
^^^^^^^^^^

bgcolor:
    Background color of image, e.g. ``--bgcolor #ffffff``

scalecolor:
    Color of scale, e.g. ``--scalecolor #000000``

playercolor:
    Color of player indicators, e.g. ``--playercolor #ff0000``

origincolor:
    Color of origin indicator, e.g. ``--origincolor #ff0000``

drawscale:
    Draw tick marks, ``--drawscale``

drawplayers:
    Draw player indicators, ``--drawplayers``

draworigin:
    Draw origin indicator, ``--draworigin``

drawalpha:
    Allow nodes to be drawn with transparency, ``--drawalpha``

noshading:
    Don't draw shading on nodes, ``--noshading``

min-y:
    Don't draw nodes below this y value, e.g. ``--min-y -25``

max-y:
    Don't draw nodes above this y value, e.g. ``--max-y 75``

backend:
    Use specific map backend; supported: *sqlite3*, *leveldb*, *redis*, *postgresql*, e.g. ``--backend leveldb``

geometry:
    Limit area to specific geometry (*x:y+w+h* where x and y specify the lower left corner), e.g. ``--geometry -800:-800+1600+1600``

zoom:
    "Zoom" the image by using more than one pixel per node, e.g. ``--zoom 4``

colors:
    Forcefully set path to colors.txt file (it's autodetected otherwise), e.g. ``--colors ../minetest/mycolors.txt``

scales:
    Draw scales on specified image edges (letters *t b l r* meaning top, bottom, left and right), e.g. ``--scales tbr``