Skip to content
Snippets Groups Projects

Draft: Resolve "[Epic] Changes to database-lib for the 25.01 release"

1 file
+ 11
4
Compare changes
  • Side-by-side
  • Inline
@@ -34,6 +34,9 @@ DECLARE
_max_pixel_xy RECORD;
_min_tile_xy RECORD;
_max_tile_xy RECORD;
tile_x INT;
tile_y INT;
tile_geom GEOMETRY;
BEGIN
_bbox = ST_Envelope(geom);
_min_lat = ST_YMin(_bbox);
@@ -44,10 +47,14 @@ BEGIN
_max_pixel_xy = latlon_to_pixel_xy(_min_lat, _max_lon, level_of_detail);
_min_tile_xy = pixel_xy_to_tile_xy(_min_pixel_xy.pixel_x, _min_pixel_xy.pixel_y);
_max_tile_xy = pixel_xy_to_tile_xy(_max_pixel_xy.pixel_x, _max_pixel_xy.pixel_y);
FOR i IN _min_tile_xy.tile_x.._max_tile_xy.tile_x LOOP
FOR j IN _min_tile_xy.tile_y.._max_tile_xy.tile_y LOOP
quadkey := tile_xy_to_quadkey(i, j, level_of_detail);
RETURN next;
FOR tile_x IN _min_tile_xy.tile_x.._max_tile_xy.tile_x LOOP
FOR tile_y IN _min_tile_xy.tile_y.._max_tile_xy.tile_y LOOP
quadkey := tile_xy_to_quadkey(tile_x, tile_y, level_of_detail);
tile_geom := quadkey_to_geom(quadkey);
IF tile_geom && geom THEN
RETURN NEXT;
END IF;
END LOOP;
END LOOP;
END;
Loading