From e89c838aa2a00b11e29ea9550990d795a2f674aa Mon Sep 17 00:00:00 2001 From: Piero Toffanin Date: Sat, 11 Jan 2025 15:57:57 -0500 Subject: [PATCH] More consistent hillshading across zoom levels --- app/api/tiler.py | 2 +- app/raster_utils.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/api/tiler.py b/app/api/tiler.py index a5700772..f26eedda 100644 --- a/app/api/tiler.py +++ b/app/api/tiler.py @@ -463,7 +463,7 @@ class Tiles(TaskNestedView): if tile.data.shape[0] != 1: raise exceptions.ValidationError( _("Cannot compute hillshade of non-elevation raster (multiple bands found)")) - delta_scale = (maxzoom + ZOOM_EXTRA_LEVELS + 1 - z) * 4 + delta_scale = (maxzoom + ZOOM_EXTRA_LEVELS + 1 - z) ** 2 dx = src.dataset.meta["transform"][0] * delta_scale dy = -src.dataset.meta["transform"][4] * delta_scale ls = LightSource(azdeg=315, altdeg=45) diff --git a/app/raster_utils.py b/app/raster_utils.py index d4fee27b..ed8c6808 100644 --- a/app/raster_utils.py +++ b/app/raster_utils.py @@ -233,7 +233,7 @@ def export_raster(input, output, **opts): intensity = None if hillshade is not None and hillshade > 0: - delta_scale = (ZOOM_EXTRA_LEVELS + 1) * 4 + delta_scale = ZOOM_EXTRA_LEVELS ** 2 dx = src.meta["transform"][0] * delta_scale dy = -src.meta["transform"][4] * delta_scale ls = LightSource(azdeg=315, altdeg=45)