ST_NearestValue — columnx 및 rowy, 또는 래스터와 동일한 공간 참조 좌표 시스템 단위로 표현된 기하학적 포인트로 지정된 입력 밴드의 픽셀에 가장 가까운 NODATA
가 아닌 값을 반환합니다.
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)
;
입력한 columnx, rowy 픽셀, 또는 특정 기하학적 포인트 위치에 있는 입력 밴드에 가장 가까운 NODATA
가 아닌 값을 반환합니다. columnx, rowy 픽셀 또는 특정 기하학적 포인트 위치의 픽셀이 NODATA
일 경우, 이 함수는 columnx, rowy 픽셀 또는 특정 기하학적 포인트 위치에 가장 가까우며 NODATA
가 아닌 픽셀을 찾을 것입니다.
밴드 번호는 1부터 시작하며, 따로 지정하지 않을 경우 bandnum
을 1로 가정합니다. exclude_nodata_value
를 거짓으로 설정할 경우, nodata
픽셀을 포함한 모든 픽셀이 교차한다고 가정하고 값을 반환합니다. exclude_nodata_value
를 설정하지 않은 경우, 래스터의 메타데이터에서 값을 읽어 들입니다.
2.1.0 버전부터 사용할 수 있습니다.
ST_NearestValue 함수는 즉석에서 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