GeoPython 2021

Mapquadlib - A Python library that supports multi-level tiled representations of the map of the earth.
2021-04-22, 11:15–11:45, Track 1

Mapquadlib is a zero-dependency OSS Python library that contains implementations for various tile schemas used at HERE.

A quadtree is a tree data structure in which each internal node has exactly four children. Quadtrees are most often used to partition a two-dimensional space by recursively subdividing it into four quadrants or regions. The regions may be square or rectangular, or may have arbitrary shapes.

This data structure provides a very convenient way to represent some area on the map. A map is divided to a set of tiles. Each of these tiles can also be further divided to four tiles of smaller size and this process can continue recursively until required precision is reached. A tile zoom level is a length of the path from the tile to the root of the quad tree. Each tile can be addressed by its unique key.

Mapquadlib supports different different tiling schemas and some convenient methods to work with them:

  • Earth Core (Native) Tiling schema
  • Mercator (Bing) Tiling schema
  • MOS Quad Block Tiling schema
  • HERE Tiling schema
  • Nds Quads

We will show some technicalities of different Quadtree schemas and how to work with them using Mapquadlib.