]> granicus.if.org Git - postgis/commitdiff
Added default parameter for ST_Band and reduced function count by 1.
authorBborie Park <bkpark at ucdavis.edu>
Thu, 26 May 2011 21:35:33 +0000 (21:35 +0000)
committerBborie Park <bkpark at ucdavis.edu>
Thu, 26 May 2011 21:35:33 +0000 (21:35 +0000)
Added additional regression tests for ST_Band.

git-svn-id: http://svn.osgeo.org/postgis/trunk@7259 b70326c6-7e19-0410-871a-916f4a2858ee

raster/rt_pg/rtpostgis.sql.in.c
raster/test/regress/rt_band.sql
raster/test/regress/rt_band_expected

index ba8641be30ae78e5488ce1051bcb0eb2acea4a4d..a80d6d0379a0ab7fbf18f06863b1cc5e531a0542 100644 (file)
@@ -233,7 +233,7 @@ CREATE OR REPLACE FUNCTION st_addband(torast raster, fromrast raster)
 -----------------------------------------------------------------------
 -- Constructor ST_Band
 -----------------------------------------------------------------------
-CREATE OR REPLACE FUNCTION st_band(rast raster, nbands int[])
+CREATE OR REPLACE FUNCTION st_band(rast raster, nbands int[] default ARRAY[1])
        RETURNS RASTER
        AS 'MODULE_PATHNAME', 'RASTER_band'
        LANGUAGE 'C' IMMUTABLE STRICT;
@@ -253,11 +253,6 @@ CREATE OR REPLACE FUNCTION st_band(rast raster, nbands text, delimiter char)
        AS $$ SELECT st_band($1, regexp_split_to_array(regexp_replace($2, '[[:space:]]', '', 'g'), $3)::int[]) $$
        LANGUAGE 'SQL' IMMUTABLE STRICT;
 
-CREATE OR REPLACE FUNCTION st_band(rast raster)
-       RETURNS RASTER
-       AS $$ SELECT st_band($1, ARRAY[1]) $$
-       LANGUAGE 'SQL' IMMUTABLE STRICT;
-
 -----------------------------------------------------------------------
 -- ST_SummaryStats and ST_ApproxSummaryStats
 -----------------------------------------------------------------------
index 3f4825a263879900d4124e042318cccf5ab29bbb..c3d7b90a0d3deff64186bb682cbb2f80b6bb5710 100644 (file)
@@ -165,6 +165,50 @@ SELECT ST_Value(
                ARRAY[1,1]
        ),
 2, 3, 3);
+SELECT ST_Value(
+       ST_Band(
+               ST_AddBand(
+                       ST_AddBand(
+                               ST_AddBand(
+                                       ST_MakeEmptyRaster(200, 200, 10, 10, 2, 2, 0, 0,-1)
+                                       , 1, '64BF', 1234.5678, NULL
+                               )
+                               , '64BF', 987.654321, NULL
+                       )
+                       , '64BF', 9876.54321, NULL
+               ),
+               '1,1'
+       ),
+2, 3, 3);
+SELECT ST_Value(
+       ST_Band(
+               ST_AddBand(
+                       ST_AddBand(
+                               ST_AddBand(
+                                       ST_MakeEmptyRaster(200, 200, 10, 10, 2, 2, 0, 0,-1)
+                                       , 1, '64BF', 1234.5678, NULL
+                               )
+                               , '64BF', 987.654321, NULL
+                       )
+                       , '64BF', 9876.54321, NULL
+               ),
+               '1;1', ';'
+       ),
+2, 3, 3);
+SELECT ST_Value(
+       ST_Band(
+               ST_AddBand(
+                       ST_AddBand(
+                               ST_AddBand(
+                                       ST_MakeEmptyRaster(200, 200, 10, 10, 2, 2, 0, 0,-1)
+                                       , 1, '64BF', 1234.5678, NULL
+                               )
+                               , '64BF', 987.654321, NULL
+                       )
+                       , '64BF', 9876.54321, NULL
+               )
+       ),
+1, 3, 3);
 SELECT ST_NumBands(
        ST_Band(
                ST_AddBand(
index ed11fccf2b0502a5bfa8159b76d59a6a024142d5..bac65ae093ab267984a3690c52c2ac45a9ab5e9e 100644 (file)
@@ -12,6 +12,9 @@
 9876.54321
 987.654321
 1234.5678
+1234.5678
+1234.5678
+1234.5678
 4
 3
 2