slicerdicer/README.md

37 lines
976 B
Markdown
Raw Normal View History

2019-06-20 20:29:59 +09:30
# slicerdicer
2019-06-20 21:45:48 +09:30
2019-06-20 21:59:21 +09:30
Slice and dice an image, turning it into many equal sized tiles. Useful
2019-06-24 15:13:12 +09:30
for tools like leaflet.js, to create interactive "slippy" maps.
2019-06-20 21:59:21 +09:30
The image is sliced up into equal sized tiles, based on the command line
2019-06-24 15:13:12 +09:30
option `--tile-size` (default 256 pixels).
2019-06-20 21:59:21 +09:30
Once the tiling is finished, the original is resized to half its current
dimensions (the orignal file on disk is not touched) and the process repeats.
Each halving is a new "zoom level".
Each file is named something like:
tile-z-x-y.png
Where 'z' is the zoom level, x and y are the coordinates, with 0,0 being
the top left tile.
2019-06-20 21:45:48 +09:30
## Usage
2019-06-20 21:59:21 +09:30
slicerdicer --help
2019-06-20 21:45:48 +09:30
2019-06-20 23:01:01 +09:30
slicerdicer --filename foo.png --tile-size 256 --concurrency 5
## Notes
2019-06-24 15:13:12 +09:30
### Memory
2019-06-20 23:01:01 +09:30
In my tests on an 32641 x 16471, 8-bit/color RGB PNG, memory usage peaks at
around 2.7GB.
2019-06-24 15:13:12 +09:30
### Speed
On that same test image, the run takes around 63 seconds to create the 11179
tiles, on my fairly underwhelming MacBookPro12,1 (dual core i5).