$(NULL)
TEST_FUNC = \
- create_rt_bytea_test.sql \
rt_bytea.sql \
- create_box3d_test.sql \
box3d.sql \
rt_addband.sql \
rt_band.sql \
-- the terms of the GNU General Public Licence. See the COPYING file.
-----------------------------------------------------------------------
+CREATE TABLE rt_box3d_test (
+ id numeric,
+ name text,
+ rast raster,
+ env box3d
+);
+
+-- 10x20, ip:0.5,0.5 scale:2,3
+INSERT INTO rt_box3d_test
+VALUES ( 0, '10x20, ip:0.5,0.5 scale:2,3 skew:0,0',
+(
+'01' -- little endian (uint8 ndr)
+||
+'0000' -- version (uint16 0)
+||
+'0000' -- nBands (uint16 0)
+||
+'0000000000000040' -- scaleX (float64 2)
+||
+'0000000000000840' -- scaleY (float64 3)
+||
+'000000000000E03F' -- ipX (float64 0.5)
+||
+'000000000000E03F' -- ipY (float64 0.5)
+||
+'0000000000000000' -- skewX (float64 0)
+||
+'0000000000000000' -- skewY (float64 0)
+||
+'0A000000' -- SRID (int32 10)
+||
+'0A00' -- width (uint16 10)
+||
+'1400' -- height (uint16 20)
+)::raster
+,'BOX3D(0.5 0.5,20.5 60.5 0)' -- expected envelope (20x60) == (10*2 x 20*3)
+);
+
+INSERT INTO rt_box3d_test
+VALUES ( 1, '1x1, ip:2.5,2.5 scale:5,5 skew:0,0',
+(
+'01' -- little endian (uint8 ndr)
+||
+'0000' -- version (uint16 0)
+||
+'0000' -- nBands (uint16 0)
+||
+'0000000000001440' -- scaleX (float64 5)
+||
+'0000000000001440' -- scaleY (float64 5)
+||
+'0000000000000440' -- ipX (float64 2.5)
+||
+'0000000000000440' -- ipY (float64 2.5)
+||
+'0000000000000000' -- skewX (float64 0)
+||
+'0000000000000000' -- skewY (float64 0)
+||
+'00000000' -- SRID (int32 0)
+||
+'0100' -- width (uint16 1)
+||
+'0100' -- height (uint16 1)
+)::raster
+,'BOX3D(2.5 2.5,7.5 7.5 0)' -- expected envelope
+);
+
+INSERT INTO rt_box3d_test
+VALUES ( 2, '1x1, ip:7.5,2.5 scale:5,5 skew:0,0',
+(
+'01' -- little endian (uint8 ndr)
+||
+'0000' -- version (uint16 0)
+||
+'0000' -- nBands (uint16 0)
+||
+'0000000000001440' -- scaleX (float64 5)
+||
+'0000000000001440' -- scaleY (float64 5)
+||
+'0000000000001E40' -- ipX (float64 7.5)
+||
+'0000000000000440' -- ipY (float64 2.5)
+||
+'0000000000000000' -- skewX (float64 0)
+||
+'0000000000000000' -- skewY (float64 0)
+||
+'00000000' -- SRID (int32 0)
+||
+'0100' -- width (uint16 1)
+||
+'0100' -- height (uint16 1)
+)::raster
+,'BOX3D(7.5 2.5,12.5 7.5 0)' -- expected envelope
+);
+
-----------------------------------------------------------------------
-- test bounding box (2D)
-----------------------------------------------------------------------
FROM rt_box3d_test
WHERE
box3d(st_envelope(rast))::text != env::text;
+
+-- Cleanup
+DROP TABLE rt_box3d_test;
+++ /dev/null
------------------------------------------------------------------------
--- $Id$
---
--- Copyright (c) 2009 Sandro Santilli <strk@keybit.net>
---
--- This is free software; you can redistribute and/or modify it under
--- the terms of the GNU General Public Licence. See the COPYING file.
------------------------------------------------------------------------
-
-CREATE TABLE rt_box3d_test (
- id numeric,
- name text,
- rast raster,
- env box3d
-);
-
--- 10x20, ip:0.5,0.5 scale:2,3
-INSERT INTO rt_box3d_test
-VALUES ( 0, '10x20, ip:0.5,0.5 scale:2,3 skew:0,0',
-(
-'01' -- little endian (uint8 ndr)
-||
-'0000' -- version (uint16 0)
-||
-'0000' -- nBands (uint16 0)
-||
-'0000000000000040' -- scaleX (float64 2)
-||
-'0000000000000840' -- scaleY (float64 3)
-||
-'000000000000E03F' -- ipX (float64 0.5)
-||
-'000000000000E03F' -- ipY (float64 0.5)
-||
-'0000000000000000' -- skewX (float64 0)
-||
-'0000000000000000' -- skewY (float64 0)
-||
-'0A000000' -- SRID (int32 10)
-||
-'0A00' -- width (uint16 10)
-||
-'1400' -- height (uint16 20)
-)::raster
-,'BOX3D(0.5 0.5,20.5 60.5 0)' -- expected envelope (20x60) == (10*2 x 20*3)
-);
-
-INSERT INTO rt_box3d_test
-VALUES ( 1, '1x1, ip:2.5,2.5 scale:5,5 skew:0,0',
-(
-'01' -- little endian (uint8 ndr)
-||
-'0000' -- version (uint16 0)
-||
-'0000' -- nBands (uint16 0)
-||
-'0000000000001440' -- scaleX (float64 5)
-||
-'0000000000001440' -- scaleY (float64 5)
-||
-'0000000000000440' -- ipX (float64 2.5)
-||
-'0000000000000440' -- ipY (float64 2.5)
-||
-'0000000000000000' -- skewX (float64 0)
-||
-'0000000000000000' -- skewY (float64 0)
-||
-'00000000' -- SRID (int32 0)
-||
-'0100' -- width (uint16 1)
-||
-'0100' -- height (uint16 1)
-)::raster
-,'BOX3D(2.5 2.5,7.5 7.5 0)' -- expected envelope
-);
-
-INSERT INTO rt_box3d_test
-VALUES ( 2, '1x1, ip:7.5,2.5 scale:5,5 skew:0,0',
-(
-'01' -- little endian (uint8 ndr)
-||
-'0000' -- version (uint16 0)
-||
-'0000' -- nBands (uint16 0)
-||
-'0000000000001440' -- scaleX (float64 5)
-||
-'0000000000001440' -- scaleY (float64 5)
-||
-'0000000000001E40' -- ipX (float64 7.5)
-||
-'0000000000000440' -- ipY (float64 2.5)
-||
-'0000000000000000' -- skewX (float64 0)
-||
-'0000000000000000' -- skewY (float64 0)
-||
-'00000000' -- SRID (int32 0)
-||
-'0100' -- width (uint16 1)
-||
-'0100' -- height (uint16 1)
-)::raster
-,'BOX3D(7.5 2.5,12.5 7.5 0)' -- expected envelope
-);
+++ /dev/null
------------------------------------------------------------------------
--- $Id$
---
--- Copyright (c) 2009 Mateusz Loskot <mateusz@loskot.net>
---
--- This is free software; you can redistribute and/or modify it under
--- the terms of the GNU General Public Licence. See the COPYING file.
------------------------------------------------------------------------
-
-CREATE TABLE rt_bytea_test (
- id numeric,
- name text,
- rast raster
- );
-
-INSERT INTO rt_bytea_test
-VALUES ( 0, '10x20, ip:0.5,0.5 scale:2,3 skew:0,0 srid:10 width:10 height:20',
-(
-'01' -- little endian (uint8 ndr)
-||
-'0000' -- version (uint16 0)
-||
-'0000' -- nBands (uint16 0)
-||
-'0000000000000040' -- scaleX (float64 2)
-||
-'0000000000000840' -- scaleY (float64 3)
-||
-'000000000000E03F' -- ipX (float64 0.5)
-||
-'000000000000E03F' -- ipY (float64 0.5)
-||
-'0000000000000000' -- skewX (float64 0)
-||
-'0000000000000000' -- skewY (float64 0)
-||
-'0A000000' -- SRID (int32 10)
-||
-'0A00' -- width (uint16 10)
-||
-'1400' -- height (uint16 20)
-)::raster
-);
-
-INSERT INTO rt_bytea_test
-VALUES ( 1, '1x1, ip:2.5,2.5 scale:5,5 skew:0,0, srid:1, width:1, height:1',
-(
-'01' -- little endian (uint8 ndr)
-||
-'0000' -- version (uint16 0)
-||
-'0000' -- nBands (uint16 0)
-||
-'0000000000001440' -- scaleX (float64 5)
-||
-'0000000000001440' -- scaleY (float64 5)
-||
-'0000000000000440' -- ipX (float64 2.5)
-||
-'0000000000000440' -- ipY (float64 2.5)
-||
-'0000000000000000' -- skewX (float64 0)
-||
-'0000000000000000' -- skewY (float64 0)
-||
-'0C000000' -- SRID (int32 12)
-||
-'0100' -- width (uint16 1)
-||
-'0100' -- height (uint16 1)
-)::raster
-);
-
-INSERT INTO rt_bytea_test
-VALUES ( 2, '1x1, ip:7.5,2.5 scale:5,5 skew:0,0, srid:0, width:1, height:1',
-(
-'01' -- little endian (uint8 ndr)
-||
-'0000' -- version (uint16 0)
-||
-'0000' -- nBands (uint16 0)
-||
-'0000000000001440' -- scaleX (float64 5)
-||
-'0000000000001440' -- scaleY (float64 5)
-||
-'0000000000001E40' -- ipX (float64 2.5)
-||
-'0000000000000440' -- ipY (float64 2.5)
-||
-'0000000000000000' -- skewX (float64 0)
-||
-'0000000000000000' -- skewY (float64 0)
-||
-'00000000' -- SRID (int32 0)
-||
-'0100' -- width (uint16 1)
-||
-'0100' -- height (uint16 1)
-)::raster
-);
-
-INSERT INTO rt_bytea_test
-VALUES ( 3, '1x1, ip:7.5,2.5 scale:5,5 skew:0,0, srid:-1, width:1, height:1',
-(
-'01' -- little endian (uint8 ndr)
-||
-'0000' -- version (uint16 0)
-||
-'0000' -- nBands (uint16 0)
-||
-'0000000000001440' -- scaleX (float64 5)
-||
-'0000000000001440' -- scaleY (float64 5)
-||
-'0000000000001E40' -- ipX (float64 2.5)
-||
-'0000000000000440' -- ipY (float64 2.5)
-||
-'0000000000000000' -- skewX (float64 0)
-||
-'0000000000000000' -- skewY (float64 0)
-||
-'FFFFFFFF' -- SRID (int32 -1)
-||
-'0100' -- width (uint16 1)
-||
-'0100' -- height (uint16 1)
-)::raster
-);
-- the terms of the GNU General Public Licence. See the COPYING file.
-----------------------------------------------------------------------
+CREATE TABLE rt_bytea_test (
+ id numeric,
+ name text,
+ rast raster
+ );
+
+INSERT INTO rt_bytea_test
+VALUES ( 0, '10x20, ip:0.5,0.5 scale:2,3 skew:0,0 srid:10 width:10 height:20',
+(
+'01' -- little endian (uint8 ndr)
+||
+'0000' -- version (uint16 0)
+||
+'0000' -- nBands (uint16 0)
+||
+'0000000000000040' -- scaleX (float64 2)
+||
+'0000000000000840' -- scaleY (float64 3)
+||
+'000000000000E03F' -- ipX (float64 0.5)
+||
+'000000000000E03F' -- ipY (float64 0.5)
+||
+'0000000000000000' -- skewX (float64 0)
+||
+'0000000000000000' -- skewY (float64 0)
+||
+'0A000000' -- SRID (int32 10)
+||
+'0A00' -- width (uint16 10)
+||
+'1400' -- height (uint16 20)
+)::raster
+);
+
+INSERT INTO rt_bytea_test
+VALUES ( 1, '1x1, ip:2.5,2.5 scale:5,5 skew:0,0, srid:1, width:1, height:1',
+(
+'01' -- little endian (uint8 ndr)
+||
+'0000' -- version (uint16 0)
+||
+'0000' -- nBands (uint16 0)
+||
+'0000000000001440' -- scaleX (float64 5)
+||
+'0000000000001440' -- scaleY (float64 5)
+||
+'0000000000000440' -- ipX (float64 2.5)
+||
+'0000000000000440' -- ipY (float64 2.5)
+||
+'0000000000000000' -- skewX (float64 0)
+||
+'0000000000000000' -- skewY (float64 0)
+||
+'0C000000' -- SRID (int32 12)
+||
+'0100' -- width (uint16 1)
+||
+'0100' -- height (uint16 1)
+)::raster
+);
+
+INSERT INTO rt_bytea_test
+VALUES ( 2, '1x1, ip:7.5,2.5 scale:5,5 skew:0,0, srid:0, width:1, height:1',
+(
+'01' -- little endian (uint8 ndr)
+||
+'0000' -- version (uint16 0)
+||
+'0000' -- nBands (uint16 0)
+||
+'0000000000001440' -- scaleX (float64 5)
+||
+'0000000000001440' -- scaleY (float64 5)
+||
+'0000000000001E40' -- ipX (float64 2.5)
+||
+'0000000000000440' -- ipY (float64 2.5)
+||
+'0000000000000000' -- skewX (float64 0)
+||
+'0000000000000000' -- skewY (float64 0)
+||
+'00000000' -- SRID (int32 0)
+||
+'0100' -- width (uint16 1)
+||
+'0100' -- height (uint16 1)
+)::raster
+);
+
+INSERT INTO rt_bytea_test
+VALUES ( 3, '1x1, ip:7.5,2.5 scale:5,5 skew:0,0, srid:-1, width:1, height:1',
+(
+'01' -- little endian (uint8 ndr)
+||
+'0000' -- version (uint16 0)
+||
+'0000' -- nBands (uint16 0)
+||
+'0000000000001440' -- scaleX (float64 5)
+||
+'0000000000001440' -- scaleY (float64 5)
+||
+'0000000000001E40' -- ipX (float64 2.5)
+||
+'0000000000000440' -- ipY (float64 2.5)
+||
+'0000000000000000' -- skewX (float64 0)
+||
+'0000000000000000' -- skewY (float64 0)
+||
+'FFFFFFFF' -- SRID (int32 -1)
+||
+'0100' -- width (uint16 1)
+||
+'0100' -- height (uint16 1)
+)::raster
+);
+
-----------------------------------------------------------------------
--- Test HEX
-----------------------------------------------------------------------
OR
encode(st_asbinary(rast), 'base64') != encode(rast, 'base64')
;
+
+-- Cleanup
+DROP TABLE rt_bytea_test;