Hi Andrea,

> Hi,
> I've exported a TIFF to geopackage raster, and noticed that while the
> exported data only cover
> zoom level 7, the tile matrix definition ranges from 0 to 7.
> 
> From the reader point of view, it seems that in order to get the
> effectively populated tile
> matrix levels one would have to run a select distinct on the zoom level in
> the tile table,
> which seems rather inefficient.
> 
> I checked the spec and while it demands a tile matrix spec for populated
> levels, it does not
> seem to require omitting it for non populated levels. Can you confirm?

Yes that's my understanding too that gpkg_tile_matrix can be instanciated at 
zoom levels for 
which there is actually no tile in the pyramid table. I guess I did this choice 
betcause I wasn't 
sure how to interpret the requirement for consecutive zoom levels differing by 
a factor of 2, 
and thus chose to pre-create all zoom levels from level 0 to level N. This is 
also slightly more 
convenient in update mode if you want to add tiles at low zoom levels: you just 
have to insert 
them into the pyramid table.

> 
> I think I'm seeing in the code a check verifying that indeed at least one
> tile is present before
> listing a particular zoom level:
> 
> // In read-only mode, only lists non empty zoom levels
>     else if( !bUpdate )
>     {
>         osSQL += CPLSPrintf(" AND EXISTS(SELECT 1 FROM %s WHERE zoom_level
> = tm.zoom_level LIMIT 1)",
>                             osQuotedTableName.c_str());
>     }
> 

Yes that's the request to find which zoom levels are actually populated so as 
to find the 
highest zoom level (the base level used to compute the raster dimensions) and 
the populated 
overviews. I would expect this request to be not that inefficient since the 
pyramid table has 
an index on (zoom_level, tile_column, tile_row), thus finding if at least one 
tile exists at a 
zoom level should only involve looking at the index.

Even

-- 
Spatialys - Geospatial professional services
http://www.spatialys.com
_______________________________________________
gdal-dev mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/gdal-dev

Reply via email to