Added function to calculate a quadtree in a tile
This adds a function tile_quadtree
to the tilegrid
class, plus some small helper functions scattered across all class modules, plus a whole lot of test functions.
tile_quadtree
takes a set of leafs (e.g. 4 level 18 tiles that are known to be coastal from previous steps) and calculates the quadtree
upwards until an existing database tile or a stop threshold is hit. The function then returns a list of (new) quadkeys to update or insert (upsert
) to the database and existing ones that have to be remove
d. The function results come in the form of a dictionary, e.g.
{'upsert': ['120210023223301020',
'120210023223301021',
'120210023223301022',
'120210023223301023',
'12021002322330100',
'12021002322330101',
'12021002322330103',
'1202100232233011',
'1202100232233012',
'1202100232233013'],
'remove': [('120210023223301', 0)]}
Graphically this quad-tree looks like so: