Skip to main content

tiler-swift

Tiler Swift, the swiftest quadkey tiler in the wild west.

Features

  • ✔ Get quadkey tiles from raster
  • ✔ Simple and blazingly fast

Table of Contents

  1. Overview
  2. Library
  3. Command Line
  4. Development
  5. License

Overview

This project provides a Python library and a thin command line wrapper on top of it to cut quadkey raster tiles.

Quadkey tiles are raster files of equal size (width, height) on a specific zoom level; the coordinate reference system is the Mercator Projection. The quadkey identifier is constructed by dividing the world into four, then dividing each cell into four again, and so on, recursively.

See

Library

The quadkeys(dataset, z, nodata=0, tile_filter_fn=None) function provides a generator yielding quadkeys and their associated data.

Args

  • dataset: the rasterio dataset to cut quadkeys from
  • z: the zoom level to cut quadkeys at
  • nodata: the value to use for filling
  • tile_filter_fn: a function mercantile.Tile -> bool to filter the quadkey generator with

Yields a tuple with

  • quadkey: the quadkey name e.g. 1202121012
  • data: the pixel data as a numpy ndarray
  • profile: the rasterio profile with metadata e.g. transformation for geo-referencing

Example usage:

for quadkey, data, profile in quadkeys(dataset, z=args.zoom):
    print(quadkey)

    with rasterio.open(args.out, "w", **profile) as out:
        out.write(data)

Command Line

usage: tiler-swift [-h] -z ZOOM -o OUT [-n NODATA] raster

cuts quadkeys from raster

positional arguments:
  raster                raster to cut quadkeys from

optional arguments:
  -h, --help            show this help message and exit
  -z ZOOM, --zoom ZOOM  zoom level to cut quadkeys at (default: None)
  -o OUT, --out OUT     directory to write quadkeys to (default: None)
  -n NODATA, --nodata NODATA
                        nodata value to use for filling at edges (default: None)

Example usage:

quadkeys input.tif -o output.tif -z 10 -n 0

Development

For development

make

make run
$ tiler-swift --help

Inside the self-contained reproducible container

flake8 rfq
mypy rfq
pytest

License

Copyright © 2020 robofarm

Distributed under the MIT License (MIT).

Release files for tiler-swift 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tiler-swift 1.1.0
File Size Uploaded
tiler-swift-1.1.0.tar.gz 1.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for tiler-swift 1.1.0
File Interpreter ABI Platform
tiler_swift-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 2.4 MB

Release files / tiler-swift-1.1.0.tar.gz

Download URL tiler-swift-1.1.0.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
0dc500bf2a8d91c83d90d4d67646dcd77f731f28e225db9bd055faae6dce5997
BLAKE2b-256 checksum
How to use checksums
aaa378ad5400bbb249c29c764600d29c5fd3ab44ffd8d179a9df21e3c5daa3ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.6 CPython/3.8.5 Linux/5.8.0-55-generic

Release files / tiler_swift-1.1.0-py3-none-any.whl

Download URL tiler_swift-1.1.0-py3-none-any.whl
Size 1.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
20b951b9f3d894d2a3324b50b6de1cc0eed8e59c62873bbcf1859c963c54121c
BLAKE2b-256 checksum
How to use checksums
ea5c4c82f76934aaed90abc60d1ad226068d126d9907bbf50ca5f33b5e5be57a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.6 CPython/3.8.5 Linux/5.8.0-55-generic

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page