Coverage for gws-app/gws/plugin/tile_layer/grabber.py: 0%

14 statements  

« prev     ^ index     » next       coverage.py v7.16.2, created at 2026-10-05 13:35 +0200

1"""Tile layer grabber.""" 

2 

3import gws 

4import gws.base.grabber.tile 

5import gws.lib.grid 

6 

7from . import provider 

8 

9 

10class Object(gws.base.grabber.tile.Object): 

11 """Grabber for XYZ tile services.""" 

12 

13 provider: provider.Object 

14 """Tile provider.""" 

15 

16 def __init__(self, opts: gws.base.grabber.Options, provider: provider.Object): 

17 """Create the grabber. 

18 

19 Args: 

20 opts: Grabber options. 

21 provider: Tile provider. 

22 """ 

23 super().__init__(opts) 

24 self.provider = provider 

25 

26 sg = self.provider.grid 

27 

28 self.sourceCrs = sg.crs 

29 self.sourceTms = gws.lib.grid.matrix_set_for_grid(sg, self.provider.maxLevel) 

30 

31 def fetch_tile_as_bytes(self, tm, col, row): 

32 return self.provider.get_tile(col, row, int(tm.identifier))