mapchete.tile module¶
Mapchtete handling tiles.
- class mapchete.tile.BufferedTile(*args: Any, **kwargs: Any)¶
Bases:
Tile
A special tile with fixed pixelbuffer.
- Parameters
- tile
Tile
- pixelbufferinteger
tile buffer in pixels
- tile
- Attributes
- heightinteger
tile height in pixels
- widthinteger
tile width in pixels
- shapetuple
tile width and height in pixels
- affine
Affine
Affine
object describing tile extent and pixel size- boundstuple
left, bottom, right, top values of tile boundaries
- bbox
shapely.geometry
tile bounding box as shapely geometry
- pixelbufferinteger
pixelbuffer used to create tile
- profiledictionary
rasterio metadata profile
- affine()¶
Return buffered Affine.
- bbox()¶
Return buffered bounding box.
- bottom()¶
- bounds()¶
Return buffered bounds.
- get_children()¶
Get tile children (intersecting tiles in next zoom level).
- Returns
- childrenlist
a list of
BufferedTiles
- get_neighbors(connectedness=8)¶
Return tile neighbors.
Tile neighbors are unique, i.e. in some edge cases, where both the left and right neighbor wrapped around the antimeridian is the same. Also, neighbors ouside the northern and southern TilePyramid boundaries are excluded, because they are invalid.
# ————- # | 8 | 1 | 5 | # ————- # | 4 | x | 2 | # ————- # | 7 | 3 | 6 | # ————-
- Parameters
- connectednessint
[4 or 8] return four direct neighbors or all eight.
- Returns
- list of BufferedTiles
- get_parent()¶
Get tile parent (intersecting tile in previous zoom level).
- Returns
- parent
BufferedTile
- parent
- height()¶
Return buffered height.
- is_on_edge()¶
Determine whether tile touches or goes over pyramid edge.
- left()¶
- right()¶
- shape()¶
Return buffered shape.
- top()¶
- width()¶
Return buffered width.
- class mapchete.tile.BufferedTilePyramid(*args: Any, **kwargs: Any)¶
Bases:
TilePyramid
A special tile pyramid with fixed pixelbuffer and metatiling.
- Parameters
- pyramid_typestring
pyramid projection type (
geodetic
ormercator
)- metatilinginteger
metatile size (default: 1)
- pixelbufferinteger
buffer around tiles in pixel (default: 0)
- Attributes
- tile_pyramid
TilePyramid
underlying
TilePyramid
- metatilinginteger
metatile size
- pixelbufferinteger
tile buffer size in pixels
- tile_pyramid
- from_dict()¶
Initialize TilePyramid from configuration dictionary.
- intersecting(tile)¶
Return all BufferedTiles intersecting with tile.
- Parameters
- tile
BufferedTile
another tile
- tile
- matrix_affine(zoom)¶
Return Affine object for zoom level assuming tiles are cells.
- Parameters
- zoominteger
zoom level
- tile(zoom, row, col)¶
Return
BufferedTile
object of thisBufferedTilePyramid
.- Parameters
- zoominteger
zoom level
- rowinteger
tile matrix row
- colinteger
tile matrix column
- Returns
- buffered tile
BufferedTile
- buffered tile
- tiles_from_bbox(geometry, zoom=None, batch_by=None)¶
All metatiles intersecting with given bounding box.
- Parameters
- geometry
shapely.geometry
- zoominteger
zoom level
- geometry
- Yields
- intersecting tilesgenerator
generates
BufferedTiles
- tiles_from_bounds(bounds=None, zoom=None, batch_by=None)¶
Return all tiles intersecting with bounds.
Bounds values will be cleaned if they cross the antimeridian or are outside of the Northern or Southern tile pyramid bounds.
- Parameters
- boundstuple
(left, bottom, right, top) bounding values in tile pyramid CRS
- zoominteger
zoom level
- Yields
- intersecting tilesgenerator
generates
BufferedTiles
- tiles_from_geom(geometry, zoom=None, batch_by=None, exact=False)¶
Return all tiles intersecting with input geometry.
- Parameters
- geometry
shapely.geometry
- zoominteger
zoom level
- geometry
- Yields
- intersecting tiles
BufferedTile
- intersecting tiles
- to_dict()¶
Return dictionary representation of pyramid parameters.
- mapchete.tile.count_tiles(geometry, pyramid, minzoom, maxzoom, init_zoom=0, rasterize_threshold=0)¶
Count number of tiles intersecting with geometry.
- Parameters
- geometryshapely geometry
- pyramidTilePyramid
- minzoomint
- maxzoomint
- init_zoomint
- Returns
- number of tiles