From efb538a7c893bd164c2b345d10a90fac43c3a9a2 Mon Sep 17 00:00:00 2001 From: Bborie Park Date: Tue, 23 Oct 2012 23:59:02 +0000 Subject: [PATCH] Rearranged function arguments for ST_Tile(raster) git-svn-id: http://svn.osgeo.org/postgis/trunk@10536 b70326c6-7e19-0410-871a-916f4a2858ee --- doc/reference_raster.xml | 11 +++++++++-- raster/rt_pg/rtpostgis.sql.in.c | 23 +++++++++++++++++++---- raster/rt_pg/rtpostgis_drop.sql.in.c | 4 ++++ raster/test/regress/rt_tile.sql | 6 +++--- 4 files changed, 35 insertions(+), 9 deletions(-) diff --git a/doc/reference_raster.xml b/doc/reference_raster.xml index f5299e7e1..1f3c3b882 100644 --- a/doc/reference_raster.xml +++ b/doc/reference_raster.xml @@ -1585,9 +1585,17 @@ FROM (SELECT rid, ST_MetaData(rast) As md text ST_Tile raster rast + int[] nband + integer width + integer height + + + + text ST_Tile + raster rast + integer nband integer width integer height - int[] nband=NULL @@ -1595,7 +1603,6 @@ FROM (SELECT rid, ST_MetaData(rast) As md raster rast integer width integer height - int nband diff --git a/raster/rt_pg/rtpostgis.sql.in.c b/raster/rt_pg/rtpostgis.sql.in.c index 3e899e13a..6f7ec96ba 100644 --- a/raster/rt_pg/rtpostgis.sql.in.c +++ b/raster/rt_pg/rtpostgis.sql.in.c @@ -3966,7 +3966,7 @@ CREATE OR REPLACE FUNCTION st_setgeoreference(rast raster, georef text, format t -- ST_Tile(raster) ----------------------------------------------------------------------- -CREATE OR REPLACE FUNCTION st_tile( +CREATE OR REPLACE FUNCTION _st_tile( rast raster, width integer, height integer, nband int[] DEFAULT NULL @@ -3975,13 +3975,28 @@ CREATE OR REPLACE FUNCTION st_tile( AS 'MODULE_PATHNAME','RASTER_tile' LANGUAGE 'c' IMMUTABLE; +CREATE OR REPLACE FUNCTION st_tile( + rast raster, nband integer[], + width integer, height integer +) + RETURNS SETOF raster + AS $$ SELECT _st_tile($1, $3, $4, $2) $$ + LANGUAGE 'sql' IMMUTABLE; + +CREATE OR REPLACE FUNCTION st_tile( + rast raster, nband integer, + width integer, height integer +) + RETURNS SETOF raster + AS $$ SELECT _st_tile($1, $3, $4, ARRAY[$2]::integer[]) $$ + LANGUAGE 'sql' IMMUTABLE; + CREATE OR REPLACE FUNCTION st_tile( rast raster, - width integer, height integer, - nband int + width integer, height integer ) RETURNS SETOF raster - AS $$ SELECT st_tile($1, $2, $3, ARRAY[$4]::int[]) $$ + AS $$ SELECT _st_tile($1, $2, $3, NULL::integer[]) $$ LANGUAGE 'sql' IMMUTABLE; ----------------------------------------------------------------------- diff --git a/raster/rt_pg/rtpostgis_drop.sql.in.c b/raster/rt_pg/rtpostgis_drop.sql.in.c index 5641cde23..7ee777773 100644 --- a/raster/rt_pg/rtpostgis_drop.sql.in.c +++ b/raster/rt_pg/rtpostgis_drop.sql.in.c @@ -436,3 +436,7 @@ DROP FUNCTION IF EXISTS st_addband(raster, raster[], integer); DROP FUNCTION IF EXISTS st_slope(raster, integer, text); DROP FUNCTION IF EXISTS st_aspect(raster, integer, text); DROP FUNCTION IF EXISTS st_hillshade(raster, integer, text, float, float, float, float); + +-- function no longer exists +DROP FUNCTION IF EXISTS st_tile(raster, integer, integer, integer[]); +DROP FUNCTION IF EXISTS st_tile(raster, integer, integer, integer); diff --git a/raster/test/regress/rt_tile.sql b/raster/test/regress/rt_tile.sql index 7c86c638f..c8e4ec9f4 100644 --- a/raster/test/regress/rt_tile.sql +++ b/raster/test/regress/rt_tile.sql @@ -23,21 +23,21 @@ SELECT FROM foo; WITH foo AS ( - SELECT ST_Tile(rast, 3, 3, ARRAY[1]) AS rast FROM raster_tile + SELECT ST_Tile(rast, ARRAY[1], 3, 3) AS rast FROM raster_tile ) SELECT 2, ST_DumpValues(rast) FROM foo; WITH foo AS ( - SELECT ST_Tile(rast, 3, 3, ARRAY[2, 1]) AS rast FROM raster_tile + SELECT ST_Tile(rast, ARRAY[2, 1], 3, 3) AS rast FROM raster_tile ) SELECT 3, ST_DumpValues(rast) FROM foo; WITH foo AS ( - SELECT ST_Tile(rast, 3, 3, 2) AS rast FROM raster_tile + SELECT ST_Tile(rast, 2, 3, 3) AS rast FROM raster_tile ) SELECT 4, ST_DumpValues(rast) -- 2.40.0