ST_NearestValue — Retourne la valeur la plus proche différent de NODATA
pour une bande raster spécifiée au pixel donné par columnx et rowy, ou à un point géométrique spécifié dans le même système de référence spatial que le raster.
double precision ST_NearestValue(
raster rast, integer bandnum, geometry pt, boolean exclude_nodata_value=true)
;
double precision ST_NearestValue(
raster rast, geometry pt, boolean exclude_nodata_value=true)
;
double precision ST_NearestValue(
raster rast, integer bandnum, integer columnx, integer rowy, boolean exclude_nodata_value=true)
;
double precision ST_NearestValue(
raster rast, integer columnx, integer rowy, boolean exclude_nodata_value=true)
;
Retourne la valeur la plus proche différent de NODATA
pour une bande raster spécifiée au pixel donné par columnx et rowy, ou à un point géométrique spécifié. Si le pixel donné par columnx, rowy ou par le point géométrique est de valeur NODATA
, la fonction trouve le plus proche pixel dont la valeur est différente de NODATA
.
Le numéro de bande démarre à 1, et la bande 1 est utilisée si bandnum
non spécifié. Si exclude_nodata_value
vaut false, tous les pixels y compris ceux ayant la valeur nodata
sont considérés comme intersectés et leur valeur sera retournée. Si exclude_nodata_value
n'est pas spécifié, la valeur est lue depuis les méta-données du raster.
Disponibilité : 2.1.0
ST_NearestValue remplace directement ST_Value. |
-- pixel 2x2 has value SELECT ST_Value(rast, 2, 2) AS value, ST_NearestValue(rast, 2, 2) AS nearestvalue FROM ( SELECT ST_SetValue( ST_SetValue( ST_SetValue( ST_SetValue( ST_SetValue( ST_AddBand( ST_MakeEmptyRaster(5, 5, -2, 2, 1, -1, 0, 0, 0), '8BUI'::text, 1, 0 ), 1, 1, 0. ), 2, 3, 0. ), 3, 5, 0. ), 4, 2, 0. ), 5, 4, 0. ) AS rast ) AS foo value | nearestvalue -------+-------------- 1 | 1
-- pixel 2x3 is NODATA SELECT ST_Value(rast, 2, 3) AS value, ST_NearestValue(rast, 2, 3) AS nearestvalue FROM ( SELECT ST_SetValue( ST_SetValue( ST_SetValue( ST_SetValue( ST_SetValue( ST_AddBand( ST_MakeEmptyRaster(5, 5, -2, 2, 1, -1, 0, 0, 0), '8BUI'::text, 1, 0 ), 1, 1, 0. ), 2, 3, 0. ), 3, 5, 0. ), 4, 2, 0. ), 5, 4, 0. ) AS rast ) AS foo value | nearestvalue -------+-------------- | 1