This adds basic post-processing to images. At the moment, it only
performs actions for the png output type, but changes to work for
jpeg will be exceptionall minimal.
Polygons and polylines are read from the new file "regions.js". Polylines
(entries with "closed" set to false) are just lines drawn on the map.
Polygons (entries with "closed" set to true) are closed loops that are
filled in with a transparent color.
Instead of re-gening the chunk, it now removes it and leaves it alone.
The reason is that, now that the cache dir is separated from the chunk
data files, there's no way for that code to know where it came from. For
now, it's easier to just omit that one chunk, it'll be re-generated on
the next run anyways.
The spawn point is automatically added to the gmap as a marker.
Adding other markers (signs, mob spawners, etc) should be fairly
easy. Note: the math that converts from in-game block coordinates
to pixel coordinates is iffy. it requires a careful codereview
Added an option to enter your own zoom level. Use -z to set the map at a
particular zoom level. Zoom levels define the width and height in tiles
of the highest zoom level, each new zoom level is twice as wide and
tall. (z=6 -> 2^6 tiles wide and tall)
Implemented tile re-arrangement on map expansion. Now most tiles will
get re-used if your map needs another zoom level! No longer does it need
to re-generate everything.
No longer creates empty directories for tiles, only creates directories
if needed.
Fixed some minor off-by-one logic (and the code that canceled it out to
make it work)
When the world expands and the Overviewer is forced to create a new zoom
level, use to be all tiles needed to be regenerated. Now that the world
center is always anchored, I can do some simple renaming of folders so
now when a world expands, tiles are re-used and it's very quick!