ST_BandIsNoData — Returnerar true om bandet är fyllt med endast nodata-värden.
boolean ST_BandIsNoData(
raster rast, integer band, boolean forceChecking=true)
;
boolean ST_BandIsNoData(
raster rast, boolean forceChecking=true)
;
Returnerar true om bandet är fyllt med endast nodata-värden. Band 1 antas om det inte anges. Om det sista argumentet är TRUE kontrolleras hela bandet pixel för pixel. I annat fall returnerar funktionen helt enkelt värdet på isnodata-flaggan för bandet. Standardvärdet för denna parameter är FALSE, om den inte anges.
Tillgänglighet: 2.0.0
![]() |
|
Om flaggan är smutsig (dvs. resultatet blir annorlunda om TRUE används som sista parameter än om den inte används) bör du uppdatera rastret så att flaggan sätts till true, genom att använda ST_SetBandIsNodata() eller ST_SetBandNodataValue() med TRUE som sista argument. Se ST_SetBandIsNoData. |
-- Create dummy table with one raster column create table dummy_rast (rid integer, rast raster); -- Add raster with two bands, one pixel/band. In the first band, nodatavalue = pixel value = 3. -- In the second band, nodatavalue = 13, pixel value = 4 insert into dummy_rast values(1, ( '01' -- little endian (uint8 ndr) || '0000' -- version (uint16 0) || '0200' -- nBands (uint16 0) || '17263529ED684A3F' -- scaleX (float64 0.000805965234044584) || 'F9253529ED684ABF' -- scaleY (float64 -0.00080596523404458) || '1C9F33CE69E352C0' -- ipX (float64 -75.5533328537098) || '718F0E9A27A44840' -- ipY (float64 49.2824585505576) || 'ED50EB853EC32B3F' -- skewX (float64 0.000211812383858707) || '7550EB853EC32B3F' -- skewY (float64 0.000211812383858704) || 'E6100000' -- SRID (int32 4326) || '0100' -- width (uint16 1) || '0100' -- height (uint16 1) || '6' -- hasnodatavalue and isnodata value set to true. || '2' -- first band type (4BUI) || '03' -- novalue==3 || '03' -- pixel(0,0)==3 (same that nodata) || '0' -- hasnodatavalue set to false || '5' -- second band type (16BSI) || '0D00' -- novalue==13 || '0400' -- pixel(0,0)==4 )::raster ); select st_bandisnodata(rast, 1) from dummy_rast where rid = 1; -- Expected true select st_bandisnodata(rast, 2) from dummy_rast where rid = 1; -- Expected false