Esempio n. 1
0
async def test_async():
    dataset = COGReader(COGEO)

    async with AsyncCOGReader(dataset) as cog:
        info = await cog.info()
        assert info == dataset.info()

        meta = cog.spatial_info
        assert meta.minzoom == 4
        assert meta.maxzoom == 8

        assert await cog.stats(5, 95)
        assert await cog.metadata(2, 98)

        data, mask = await cog.tile(43, 24, 7)
        assert data.shape == (1, 256, 256)
        assert mask.all()

        lon = -56.624124590533825
        lat = 73.52687881825946
        pts = await cog.point(lon, lat)
        assert len(pts) == 1

        bbox = (
            -56.624124590533825,
            73.52687881825946,
            -56.530950796449005,
            73.50183615350426,
        )
        data, mask = await cog.part(bbox)
        assert data.shape == (1, 11, 41)

        data, mask = await cog.preview(max_size=128)
        assert data.shape == (1, 128, 128)

        feature = {
            "type": "Feature",
            "properties": {},
            "geometry": {
                "type":
                "Polygon",
                "coordinates": [[
                    [-56.4697265625, 74.17307693616263],
                    [-57.667236328125, 73.53462847039683],
                    [-57.59033203125, 73.13451013251789],
                    [-56.195068359375, 72.94865294642922],
                    [-54.964599609375, 72.96797135377102],
                    [-53.887939453125, 73.84623016391944],
                    [-53.97583007812499, 74.0165183926664],
                    [-54.73388671875, 74.23289305339864],
                    [-55.54687499999999, 74.2269213699517],
                    [-56.129150390625, 74.21497138945001],
                    [-56.2060546875, 74.21198251594369],
                    [-56.4697265625, 74.17307693616263],
                ]],
            },
        }

        img = await cog.feature(feature)
        assert img.data.shape == (1, 349, 1024)
Esempio n. 2
0
async def test_async():
    dataset = COGReader(COGEO)

    async with AsyncCOGReader(dataset) as cog:
        info = await cog.info()
        assert info == dataset.info()

        meta = cog.spatial_info
        assert meta.minzoom == 4
        assert meta.maxzoom == 8

        assert await cog.stats(5, 95)
        assert await cog.metadata(2, 98)

        data, mask = await cog.tile(43, 24, 7)
        assert data.shape == (1, 256, 256)
        assert mask.all()

        lon = -56.624124590533825
        lat = 73.52687881825946
        pts = await cog.point(lon, lat)
        assert len(pts) == 1

        bbox = (
            -56.624124590533825,
            73.52687881825946,
            -56.530950796449005,
            73.50183615350426,
        )
        data, mask = await cog.part(bbox)
        assert data.shape == (1, 11, 41)

        data, mask = await cog.preview(max_size=128)
        assert data.shape == (1, 128, 128)