mirror of
https://git.osgeo.org/gitea/postgis/postgis
synced 2024-10-24 00:52:40 +00:00
Combined all raster GEOS dependent spatial relationship regression tests into
rt_geos_relationships.sql git-svn-id: http://svn.osgeo.org/postgis/trunk@10473 b70326c6-7e19-0410-871a-916f4a2858ee
This commit is contained in:
parent
085b0d3dfb
commit
313ca7680e
|
@ -122,17 +122,8 @@ TEST_GIST = \
|
|||
|
||||
TEST_SREL = \
|
||||
rt_intersects \
|
||||
rt_overlaps \
|
||||
rt_touches \
|
||||
rt_contains \
|
||||
rt_containsproperly \
|
||||
rt_covers \
|
||||
rt_coveredby \
|
||||
rt_within \
|
||||
rt_disjoint \
|
||||
rt_dwithin \
|
||||
rt_dfullywithin \
|
||||
rt_samealignment
|
||||
rt_samealignment \
|
||||
rt_geos_relationships
|
||||
|
||||
TEST_BUGS = \
|
||||
bug_test_car5 \
|
||||
|
|
|
@ -1,198 +0,0 @@
|
|||
SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_contains_rast;
|
||||
CREATE TABLE raster_contains_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(
|
||||
rid integer,
|
||||
width integer DEFAULT 2, height integer DEFAULT 2,
|
||||
ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0,
|
||||
skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0
|
||||
)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_contains_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_contains_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_contains_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_contains_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_contains_rast r1
|
||||
CROSS JOIN raster_contains_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_contains_rast r1
|
||||
JOIN raster_contains_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_contains_rast r1
|
||||
JOIN raster_contains_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.4',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_contains_rast r1
|
||||
JOIN raster_contains_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_contains_rast;
|
|
@ -1,65 +0,0 @@
|
|||
1.1|0|0|t
|
||||
1.1|0|1|f
|
||||
1.1|0|2|f
|
||||
1.1|0|10|f
|
||||
1.1|0|11|f
|
||||
1.1|0|12|f
|
||||
1.1|0|13|f
|
||||
1.1|0|14|f
|
||||
1.1|0|15|t
|
||||
1.1|0|16|t
|
||||
1.1|0|20|f
|
||||
1.1|0|21|f
|
||||
1.1|0|22|f
|
||||
1.1|0|23|f
|
||||
1.1|0|30|f
|
||||
1.1|0|31|f
|
||||
1.1|0|32|f
|
||||
1.2|0|1|f
|
||||
1.2|0|2|f
|
||||
1.2|0|10|f
|
||||
1.2|0|11|f
|
||||
1.2|0|12|f
|
||||
1.2|0|13|f
|
||||
1.2|0|14|f
|
||||
1.2|0|15|t
|
||||
1.2|0|16|t
|
||||
1.2|0|20|f
|
||||
1.2|0|21|f
|
||||
1.2|0|22|f
|
||||
1.2|0|23|f
|
||||
1.2|0|30|f
|
||||
1.2|0|31|f
|
||||
1.2|0|32|f
|
||||
1.3|1|0|f
|
||||
1.3|2|0|f
|
||||
1.3|10|0|f
|
||||
1.3|11|0|f
|
||||
1.3|12|0|f
|
||||
1.3|13|0|f
|
||||
1.3|14|0|f
|
||||
1.3|15|0|f
|
||||
1.3|16|0|f
|
||||
1.3|20|0|t
|
||||
1.3|21|0|t
|
||||
1.3|22|0|t
|
||||
1.3|23|0|t
|
||||
1.3|30|0|f
|
||||
1.3|31|0|f
|
||||
1.3|32|0|f
|
||||
1.4|1|0|f
|
||||
1.4|2|0|f
|
||||
1.4|10|0|f
|
||||
1.4|11|0|f
|
||||
1.4|12|0|f
|
||||
1.4|13|0|f
|
||||
1.4|14|0|f
|
||||
1.4|15|0|f
|
||||
1.4|16|0|f
|
||||
1.4|20|0|t
|
||||
1.4|21|0|f
|
||||
1.4|22|0|f
|
||||
1.4|23|0|f
|
||||
1.4|30|0|f
|
||||
1.4|31|0|f
|
||||
1.4|32|0|f
|
|
@ -1,198 +0,0 @@
|
|||
SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_contains_rast;
|
||||
CREATE TABLE raster_contains_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(
|
||||
rid integer,
|
||||
width integer DEFAULT 2, height integer DEFAULT 2,
|
||||
ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0,
|
||||
skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0
|
||||
)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_contains_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_contains_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_contains_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_contains_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_contains_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_contains_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_contains_rast r1
|
||||
CROSS JOIN raster_contains_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_contains_rast r1
|
||||
JOIN raster_contains_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_contains_rast r1
|
||||
JOIN raster_contains_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.4',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_contains_rast r1
|
||||
JOIN raster_contains_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_contains_rast;
|
|
@ -1,65 +0,0 @@
|
|||
1.1|0|0|t
|
||||
1.1|0|1|f
|
||||
1.1|0|2|f
|
||||
1.1|0|10|f
|
||||
1.1|0|11|f
|
||||
1.1|0|12|f
|
||||
1.1|0|13|f
|
||||
1.1|0|14|f
|
||||
1.1|0|15|t
|
||||
1.1|0|16|t
|
||||
1.1|0|20|f
|
||||
1.1|0|21|f
|
||||
1.1|0|22|f
|
||||
1.1|0|23|f
|
||||
1.1|0|30|f
|
||||
1.1|0|31|f
|
||||
1.1|0|32|f
|
||||
1.2|0|1|f
|
||||
1.2|0|2|f
|
||||
1.2|0|10|f
|
||||
1.2|0|11|f
|
||||
1.2|0|12|f
|
||||
1.2|0|13|f
|
||||
1.2|0|14|f
|
||||
1.2|0|15|t
|
||||
1.2|0|16|t
|
||||
1.2|0|20|f
|
||||
1.2|0|21|f
|
||||
1.2|0|22|f
|
||||
1.2|0|23|f
|
||||
1.2|0|30|f
|
||||
1.2|0|31|f
|
||||
1.2|0|32|f
|
||||
1.3|1|0|f
|
||||
1.3|2|0|f
|
||||
1.3|10|0|f
|
||||
1.3|11|0|f
|
||||
1.3|12|0|f
|
||||
1.3|13|0|f
|
||||
1.3|14|0|f
|
||||
1.3|15|0|f
|
||||
1.3|16|0|f
|
||||
1.3|20|0|t
|
||||
1.3|21|0|t
|
||||
1.3|22|0|t
|
||||
1.3|23|0|t
|
||||
1.3|30|0|f
|
||||
1.3|31|0|f
|
||||
1.3|32|0|f
|
||||
1.4|1|0|f
|
||||
1.4|2|0|f
|
||||
1.4|10|0|f
|
||||
1.4|11|0|f
|
||||
1.4|12|0|f
|
||||
1.4|13|0|f
|
||||
1.4|14|0|f
|
||||
1.4|15|0|f
|
||||
1.4|16|0|f
|
||||
1.4|20|0|t
|
||||
1.4|21|0|f
|
||||
1.4|22|0|f
|
||||
1.4|23|0|f
|
||||
1.4|30|0|f
|
||||
1.4|31|0|f
|
||||
1.4|32|0|f
|
|
@ -1,198 +0,0 @@
|
|||
SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_coveredby_rast;
|
||||
CREATE TABLE raster_coveredby_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(
|
||||
rid integer,
|
||||
width integer DEFAULT 2, height integer DEFAULT 2,
|
||||
ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0,
|
||||
skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0
|
||||
)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_coveredby_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_coveredby_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_coveredby_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_coveredby_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_coveredby_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_coveredby_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_CoveredBy(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_coveredby_rast r1
|
||||
CROSS JOIN raster_coveredby_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_CoveredBy(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_coveredby_rast r1
|
||||
JOIN raster_coveredby_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_CoveredBy(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_coveredby_rast r1
|
||||
JOIN raster_coveredby_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.4',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_CoveredBy(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_coveredby_rast r1
|
||||
JOIN raster_coveredby_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_coveredby_rast;
|
|
@ -1,65 +0,0 @@
|
|||
1.1|0|0|t
|
||||
1.1|0|1|f
|
||||
1.1|0|2|f
|
||||
1.1|0|10|f
|
||||
1.1|0|11|f
|
||||
1.1|0|12|f
|
||||
1.1|0|13|f
|
||||
1.1|0|14|f
|
||||
1.1|0|15|f
|
||||
1.1|0|16|f
|
||||
1.1|0|20|t
|
||||
1.1|0|21|t
|
||||
1.1|0|22|t
|
||||
1.1|0|23|t
|
||||
1.1|0|30|f
|
||||
1.1|0|31|f
|
||||
1.1|0|32|f
|
||||
1.2|0|1|f
|
||||
1.2|0|2|f
|
||||
1.2|0|10|f
|
||||
1.2|0|11|f
|
||||
1.2|0|12|f
|
||||
1.2|0|13|f
|
||||
1.2|0|14|f
|
||||
1.2|0|15|f
|
||||
1.2|0|16|f
|
||||
1.2|0|20|t
|
||||
1.2|0|21|f
|
||||
1.2|0|22|f
|
||||
1.2|0|23|f
|
||||
1.2|0|30|f
|
||||
1.2|0|31|f
|
||||
1.2|0|32|f
|
||||
1.3|1|0|f
|
||||
1.3|2|0|f
|
||||
1.3|10|0|f
|
||||
1.3|11|0|f
|
||||
1.3|12|0|f
|
||||
1.3|13|0|f
|
||||
1.3|14|0|f
|
||||
1.3|15|0|t
|
||||
1.3|16|0|t
|
||||
1.3|20|0|f
|
||||
1.3|21|0|f
|
||||
1.3|22|0|f
|
||||
1.3|23|0|f
|
||||
1.3|30|0|f
|
||||
1.3|31|0|f
|
||||
1.3|32|0|f
|
||||
1.4|1|0|f
|
||||
1.4|2|0|f
|
||||
1.4|10|0|f
|
||||
1.4|11|0|f
|
||||
1.4|12|0|f
|
||||
1.4|13|0|f
|
||||
1.4|14|0|f
|
||||
1.4|15|0|t
|
||||
1.4|16|0|t
|
||||
1.4|20|0|f
|
||||
1.4|21|0|f
|
||||
1.4|22|0|f
|
||||
1.4|23|0|f
|
||||
1.4|30|0|f
|
||||
1.4|31|0|f
|
||||
1.4|32|0|f
|
|
@ -1,198 +0,0 @@
|
|||
SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_covers_rast;
|
||||
CREATE TABLE raster_covers_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(
|
||||
rid integer,
|
||||
width integer DEFAULT 2, height integer DEFAULT 2,
|
||||
ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0,
|
||||
skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0
|
||||
)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_covers_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_covers_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_covers_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_covers_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_covers_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_covers_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Covers(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_covers_rast r1
|
||||
CROSS JOIN raster_covers_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Covers(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_covers_rast r1
|
||||
JOIN raster_covers_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Covers(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_covers_rast r1
|
||||
JOIN raster_covers_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.4',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Covers(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_covers_rast r1
|
||||
JOIN raster_covers_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_covers_rast;
|
|
@ -1,65 +0,0 @@
|
|||
1.1|0|0|t
|
||||
1.1|0|1|f
|
||||
1.1|0|2|f
|
||||
1.1|0|10|f
|
||||
1.1|0|11|f
|
||||
1.1|0|12|f
|
||||
1.1|0|13|f
|
||||
1.1|0|14|f
|
||||
1.1|0|15|t
|
||||
1.1|0|16|t
|
||||
1.1|0|20|f
|
||||
1.1|0|21|f
|
||||
1.1|0|22|f
|
||||
1.1|0|23|f
|
||||
1.1|0|30|f
|
||||
1.1|0|31|f
|
||||
1.1|0|32|f
|
||||
1.2|0|1|f
|
||||
1.2|0|2|f
|
||||
1.2|0|10|f
|
||||
1.2|0|11|f
|
||||
1.2|0|12|f
|
||||
1.2|0|13|f
|
||||
1.2|0|14|f
|
||||
1.2|0|15|t
|
||||
1.2|0|16|t
|
||||
1.2|0|20|f
|
||||
1.2|0|21|f
|
||||
1.2|0|22|f
|
||||
1.2|0|23|f
|
||||
1.2|0|30|f
|
||||
1.2|0|31|f
|
||||
1.2|0|32|f
|
||||
1.3|1|0|f
|
||||
1.3|2|0|f
|
||||
1.3|10|0|f
|
||||
1.3|11|0|f
|
||||
1.3|12|0|f
|
||||
1.3|13|0|f
|
||||
1.3|14|0|f
|
||||
1.3|15|0|f
|
||||
1.3|16|0|f
|
||||
1.3|20|0|t
|
||||
1.3|21|0|t
|
||||
1.3|22|0|t
|
||||
1.3|23|0|t
|
||||
1.3|30|0|f
|
||||
1.3|31|0|f
|
||||
1.3|32|0|f
|
||||
1.4|1|0|f
|
||||
1.4|2|0|f
|
||||
1.4|10|0|f
|
||||
1.4|11|0|f
|
||||
1.4|12|0|f
|
||||
1.4|13|0|f
|
||||
1.4|14|0|f
|
||||
1.4|15|0|f
|
||||
1.4|16|0|f
|
||||
1.4|20|0|t
|
||||
1.4|21|0|f
|
||||
1.4|22|0|f
|
||||
1.4|23|0|f
|
||||
1.4|30|0|f
|
||||
1.4|31|0|f
|
||||
1.4|32|0|f
|
|
@ -1,218 +0,0 @@
|
|||
--SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_dfullywithin_rast;
|
||||
CREATE TABLE raster_dfullywithin_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(rid integer, width integer DEFAULT 2, height integer DEFAULT 2, ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0, skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
SELECT make_test_raster(3, 2, 2, -1, -10);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_dfullywithin_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_dfullywithin_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DFullyWithin(r1.rast, NULL, r2.rast, NULL, NULL)
|
||||
FROM raster_dfullywithin_rast r1
|
||||
CROSS JOIN raster_dfullywithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DFullyWithin(r1.rast, NULL, r2.rast, NULL, -1)
|
||||
FROM raster_dfullywithin_rast r1
|
||||
CROSS JOIN raster_dfullywithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DFullyWithin(r1.rast, NULL, r2.rast, NULL, 0)
|
||||
FROM raster_dfullywithin_rast r1
|
||||
CROSS JOIN raster_dfullywithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DFullyWithin(r1.rast, 1, r2.rast, 1, 0)
|
||||
FROM raster_dfullywithin_rast r1
|
||||
CROSS JOIN raster_dfullywithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DFullyWithin(r1.rast, 1, r2.rast, 1, 1)
|
||||
FROM raster_dfullywithin_rast r1
|
||||
CROSS JOIN raster_dfullywithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DFullyWithin(r1.rast, 1, r2.rast, 1, 2)
|
||||
FROM raster_dfullywithin_rast r1
|
||||
CROSS JOIN raster_dfullywithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DFullyWithin(r1.rast, 1, r2.rast, 1, 7)
|
||||
FROM raster_dfullywithin_rast r1
|
||||
CROSS JOIN raster_dfullywithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_dfullywithin_rast;
|
|
@ -1,110 +0,0 @@
|
|||
NOTICE: table "raster_dfullywithin_rast" does not exist, skipping
|
||||
1.1|0|0|
|
||||
1.1|0|1|
|
||||
1.1|0|2|
|
||||
1.1|0|3|
|
||||
1.1|0|10|
|
||||
1.1|0|11|
|
||||
1.1|0|12|
|
||||
1.1|0|13|
|
||||
1.1|0|14|
|
||||
1.1|0|15|
|
||||
1.1|0|16|
|
||||
1.1|0|20|
|
||||
1.1|0|21|
|
||||
1.1|0|22|
|
||||
1.1|0|23|
|
||||
1.1|0|30|
|
||||
1.1|0|31|
|
||||
1.1|0|32|
|
||||
ERROR: Tolerance cannot be less than zero
|
||||
1.3|0|0|f
|
||||
1.3|0|1|f
|
||||
1.3|0|2|f
|
||||
1.3|0|3|f
|
||||
1.3|0|10|f
|
||||
1.3|0|11|f
|
||||
1.3|0|12|f
|
||||
1.3|0|13|f
|
||||
1.3|0|14|f
|
||||
1.3|0|15|f
|
||||
1.3|0|16|f
|
||||
1.3|0|20|f
|
||||
1.3|0|21|f
|
||||
1.3|0|22|f
|
||||
1.3|0|23|f
|
||||
1.3|0|30|f
|
||||
1.3|0|31|f
|
||||
1.3|0|32|f
|
||||
2.1|0|0|f
|
||||
2.1|0|1|f
|
||||
2.1|0|2|f
|
||||
2.1|0|3|f
|
||||
2.1|0|10|f
|
||||
2.1|0|11|f
|
||||
2.1|0|12|f
|
||||
2.1|0|13|f
|
||||
2.1|0|14|f
|
||||
2.1|0|15|f
|
||||
2.1|0|16|f
|
||||
2.1|0|20|f
|
||||
2.1|0|21|f
|
||||
2.1|0|22|f
|
||||
2.1|0|23|f
|
||||
2.1|0|30|f
|
||||
2.1|0|31|f
|
||||
2.1|0|32|f
|
||||
2.2|0|0|f
|
||||
2.2|0|1|f
|
||||
2.2|0|2|f
|
||||
2.2|0|3|f
|
||||
2.2|0|10|f
|
||||
2.2|0|11|f
|
||||
2.2|0|12|f
|
||||
2.2|0|13|f
|
||||
2.2|0|14|f
|
||||
2.2|0|15|f
|
||||
2.2|0|16|f
|
||||
2.2|0|20|f
|
||||
2.2|0|21|f
|
||||
2.2|0|22|f
|
||||
2.2|0|23|f
|
||||
2.2|0|30|f
|
||||
2.2|0|31|f
|
||||
2.2|0|32|f
|
||||
2.3|0|0|f
|
||||
2.3|0|1|f
|
||||
2.3|0|2|f
|
||||
2.3|0|3|f
|
||||
2.3|0|10|f
|
||||
2.3|0|11|f
|
||||
2.3|0|12|f
|
||||
2.3|0|13|f
|
||||
2.3|0|14|f
|
||||
2.3|0|15|f
|
||||
2.3|0|16|f
|
||||
2.3|0|20|f
|
||||
2.3|0|21|f
|
||||
2.3|0|22|f
|
||||
2.3|0|23|f
|
||||
2.3|0|30|f
|
||||
2.3|0|31|f
|
||||
2.3|0|32|f
|
||||
2.3|0|0|t
|
||||
2.3|0|1|t
|
||||
2.3|0|2|t
|
||||
2.3|0|3|f
|
||||
2.3|0|10|t
|
||||
2.3|0|11|t
|
||||
2.3|0|12|t
|
||||
2.3|0|13|f
|
||||
2.3|0|14|t
|
||||
2.3|0|15|t
|
||||
2.3|0|16|t
|
||||
2.3|0|20|t
|
||||
2.3|0|21|t
|
||||
2.3|0|22|t
|
||||
2.3|0|23|t
|
||||
2.3|0|30|t
|
||||
2.3|0|31|f
|
||||
2.3|0|32|f
|
|
@ -1,174 +0,0 @@
|
|||
SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_disjoint_rast;
|
||||
CREATE TABLE raster_disjoint_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(rid integer, width integer DEFAULT 2, height integer DEFAULT 2, ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0, skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_disjoint_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_disjoint_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_disjoint_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_disjoint_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_disjoint_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_disjoint_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Disjoint(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_disjoint_rast r1
|
||||
JOIN raster_disjoint_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Disjoint(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_disjoint_rast r1
|
||||
JOIN raster_disjoint_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_disjoint_rast;
|
|
@ -1,32 +0,0 @@
|
|||
1.1|0|1|f
|
||||
1.1|0|2|f
|
||||
1.1|0|10|f
|
||||
1.1|0|11|f
|
||||
1.1|0|12|f
|
||||
1.1|0|13|f
|
||||
1.1|0|14|t
|
||||
1.1|0|15|f
|
||||
1.1|0|16|f
|
||||
1.1|0|20|f
|
||||
1.1|0|21|f
|
||||
1.1|0|22|f
|
||||
1.1|0|23|f
|
||||
1.1|0|30|f
|
||||
1.1|0|31|f
|
||||
1.1|0|32|f
|
||||
1.2|0|1|f
|
||||
1.2|0|2|f
|
||||
1.2|0|10|f
|
||||
1.2|0|11|f
|
||||
1.2|0|12|f
|
||||
1.2|0|13|t
|
||||
1.2|0|14|t
|
||||
1.2|0|15|f
|
||||
1.2|0|16|f
|
||||
1.2|0|20|f
|
||||
1.2|0|21|f
|
||||
1.2|0|22|f
|
||||
1.2|0|23|f
|
||||
1.2|0|30|f
|
||||
1.2|0|31|f
|
||||
1.2|0|32|f
|
|
@ -1,218 +0,0 @@
|
|||
--SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_dwithin_rast;
|
||||
CREATE TABLE raster_dwithin_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(rid integer, width integer DEFAULT 2, height integer DEFAULT 2, ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0, skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_dwithin_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
SELECT make_test_raster(3, 2, 2, -1, -10);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_dwithin_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_dwithin_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_dwithin_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_dwithin_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_dwithin_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DWithin(r1.rast, NULL, r2.rast, NULL, NULL)
|
||||
FROM raster_dwithin_rast r1
|
||||
CROSS JOIN raster_dwithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DWithin(r1.rast, NULL, r2.rast, NULL, -1)
|
||||
FROM raster_dwithin_rast r1
|
||||
CROSS JOIN raster_dwithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DWithin(r1.rast, NULL, r2.rast, NULL, 0)
|
||||
FROM raster_dwithin_rast r1
|
||||
CROSS JOIN raster_dwithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DWithin(r1.rast, 1, r2.rast, 1, 0)
|
||||
FROM raster_dwithin_rast r1
|
||||
CROSS JOIN raster_dwithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DWithin(r1.rast, 1, r2.rast, 1, 1)
|
||||
FROM raster_dwithin_rast r1
|
||||
CROSS JOIN raster_dwithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DWithin(r1.rast, 1, r2.rast, 1, 2)
|
||||
FROM raster_dwithin_rast r1
|
||||
CROSS JOIN raster_dwithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_DWithin(r1.rast, 1, r2.rast, 1, 7)
|
||||
FROM raster_dwithin_rast r1
|
||||
CROSS JOIN raster_dwithin_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_dwithin_rast;
|
|
@ -1,110 +0,0 @@
|
|||
NOTICE: table "raster_dwithin_rast" does not exist, skipping
|
||||
1.1|0|0|
|
||||
1.1|0|1|
|
||||
1.1|0|2|
|
||||
1.1|0|3|
|
||||
1.1|0|10|
|
||||
1.1|0|11|
|
||||
1.1|0|12|
|
||||
1.1|0|13|
|
||||
1.1|0|14|
|
||||
1.1|0|15|
|
||||
1.1|0|16|
|
||||
1.1|0|20|
|
||||
1.1|0|21|
|
||||
1.1|0|22|
|
||||
1.1|0|23|
|
||||
1.1|0|30|
|
||||
1.1|0|31|
|
||||
1.1|0|32|
|
||||
ERROR: Tolerance cannot be less than zero
|
||||
1.3|0|0|t
|
||||
1.3|0|1|t
|
||||
1.3|0|2|t
|
||||
1.3|0|3|f
|
||||
1.3|0|10|t
|
||||
1.3|0|11|t
|
||||
1.3|0|12|t
|
||||
1.3|0|13|t
|
||||
1.3|0|14|f
|
||||
1.3|0|15|t
|
||||
1.3|0|16|t
|
||||
1.3|0|20|t
|
||||
1.3|0|21|t
|
||||
1.3|0|22|t
|
||||
1.3|0|23|t
|
||||
1.3|0|30|t
|
||||
1.3|0|31|t
|
||||
1.3|0|32|t
|
||||
2.1|0|0|t
|
||||
2.1|0|1|t
|
||||
2.1|0|2|t
|
||||
2.1|0|3|f
|
||||
2.1|0|10|t
|
||||
2.1|0|11|t
|
||||
2.1|0|12|t
|
||||
2.1|0|13|f
|
||||
2.1|0|14|f
|
||||
2.1|0|15|t
|
||||
2.1|0|16|t
|
||||
2.1|0|20|t
|
||||
2.1|0|21|t
|
||||
2.1|0|22|t
|
||||
2.1|0|23|t
|
||||
2.1|0|30|t
|
||||
2.1|0|31|t
|
||||
2.1|0|32|t
|
||||
2.2|0|0|t
|
||||
2.2|0|1|t
|
||||
2.2|0|2|t
|
||||
2.2|0|3|f
|
||||
2.2|0|10|t
|
||||
2.2|0|11|t
|
||||
2.2|0|12|t
|
||||
2.2|0|13|f
|
||||
2.2|0|14|t
|
||||
2.2|0|15|t
|
||||
2.2|0|16|t
|
||||
2.2|0|20|t
|
||||
2.2|0|21|t
|
||||
2.2|0|22|t
|
||||
2.2|0|23|t
|
||||
2.2|0|30|t
|
||||
2.2|0|31|t
|
||||
2.2|0|32|t
|
||||
2.3|0|0|t
|
||||
2.3|0|1|t
|
||||
2.3|0|2|t
|
||||
2.3|0|3|f
|
||||
2.3|0|10|t
|
||||
2.3|0|11|t
|
||||
2.3|0|12|t
|
||||
2.3|0|13|f
|
||||
2.3|0|14|t
|
||||
2.3|0|15|t
|
||||
2.3|0|16|t
|
||||
2.3|0|20|t
|
||||
2.3|0|21|t
|
||||
2.3|0|22|t
|
||||
2.3|0|23|t
|
||||
2.3|0|30|t
|
||||
2.3|0|31|t
|
||||
2.3|0|32|t
|
||||
2.3|0|0|t
|
||||
2.3|0|1|t
|
||||
2.3|0|2|t
|
||||
2.3|0|3|t
|
||||
2.3|0|10|t
|
||||
2.3|0|11|t
|
||||
2.3|0|12|t
|
||||
2.3|0|13|f
|
||||
2.3|0|14|t
|
||||
2.3|0|15|t
|
||||
2.3|0|16|t
|
||||
2.3|0|20|t
|
||||
2.3|0|21|t
|
||||
2.3|0|22|t
|
||||
2.3|0|23|t
|
||||
2.3|0|30|t
|
||||
2.3|0|31|t
|
||||
2.3|0|32|t
|
274
raster/test/regress/rt_geos_relationships.sql
Normal file
274
raster/test/regress/rt_geos_relationships.sql
Normal file
|
@ -0,0 +1,274 @@
|
|||
-- These tests are for raster functions that use GEOS spatial relationship functions
|
||||
|
||||
SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_geos_rast;
|
||||
CREATE TABLE raster_geos_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(
|
||||
rid integer,
|
||||
width integer DEFAULT 2, height integer DEFAULT 2,
|
||||
ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0,
|
||||
skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0
|
||||
)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_geos_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
SELECT make_test_raster(3, 2, 2, -1, -10);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_geos_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_geos_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_geos_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_geos_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_geos_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_ContainsProperly(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_CoveredBy(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_Covers(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_Disjoint(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_Overlaps(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_Touches(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_Within(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_DWithin(r1.rast, NULL, r2.rast, NULL, 0),
|
||||
ST_DWithin(r1.rast, 1, r2.rast, 1, 0),
|
||||
ST_DWithin(r1.rast, 1, r2.rast, 1, 1),
|
||||
ST_DWithin(r1.rast, 1, r2.rast, 1, 2),
|
||||
ST_DWithin(r1.rast, 1, r2.rast, 1, 7),
|
||||
ST_DFullyWithin(r1.rast, NULL, r2.rast, NULL, 0),
|
||||
ST_DFullyWithin(r1.rast, 1, r2.rast, 1, 0),
|
||||
ST_DFullyWithin(r1.rast, 1, r2.rast, 1, 1),
|
||||
ST_DFullyWithin(r1.rast, 1, r2.rast, 1, 2),
|
||||
ST_DFullyWithin(r1.rast, 1, r2.rast, 1, 7)
|
||||
FROM raster_geos_rast r1
|
||||
CROSS JOIN raster_geos_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, 1, r2.rast, 1),
|
||||
ST_ContainsProperly(r1.rast, 1, r2.rast, 1),
|
||||
ST_CoveredBy(r1.rast, 1, r2.rast, 1),
|
||||
ST_Covers(r1.rast, 1, r2.rast, 1),
|
||||
ST_Disjoint(r1.rast, 1, r2.rast, 1),
|
||||
ST_Overlaps(r1.rast, 1, r2.rast, 1),
|
||||
ST_Touches(r1.rast, 1, r2.rast, 1),
|
||||
ST_Within(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_geos_rast r1
|
||||
JOIN raster_geos_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_ContainsProperly(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_CoveredBy(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_Covers(r1.rast, NULL, r2.rast, NULL),
|
||||
ST_Within(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_geos_rast r1
|
||||
JOIN raster_geos_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.4',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Contains(r1.rast, 1, r2.rast, 1),
|
||||
ST_ContainsProperly(r1.rast, 1, r2.rast, 1),
|
||||
ST_CoveredBy(r1.rast, 1, r2.rast, 1),
|
||||
ST_Covers(r1.rast, 1, r2.rast, 1),
|
||||
ST_Within(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_geos_rast r1
|
||||
JOIN raster_geos_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
|
||||
SELECT
|
||||
'2.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
NULL AS distance,
|
||||
ST_DWithin(r1.rast, NULL, r2.rast, NULL, NULL)
|
||||
FROM raster_geos_rast r1
|
||||
CROSS JOIN raster_geos_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
-1 AS distance,
|
||||
ST_DWithin(r1.rast, NULL, r2.rast, NULL, -1)
|
||||
FROM raster_geos_rast r1
|
||||
CROSS JOIN raster_geos_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
NULL AS distance,
|
||||
ST_DFullyWithin(r1.rast, NULL, r2.rast, NULL, NULL)
|
||||
FROM raster_geos_rast r1
|
||||
CROSS JOIN raster_geos_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'2.4',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
-1 AS distance,
|
||||
ST_DFullyWithin(r1.rast, NULL, r2.rast, NULL, -1)
|
||||
FROM raster_geos_rast r1
|
||||
CROSS JOIN raster_geos_rast r2
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_geos_rast;
|
107
raster/test/regress/rt_geos_relationships_expected
Normal file
107
raster/test/regress/rt_geos_relationships_expected
Normal file
|
@ -0,0 +1,107 @@
|
|||
1.1|0|0|t|f|t|t|f|f|f|t|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|1|f|f|f|f|f|t|f|f|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|2|f|f|f|f|f|t|f|f|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|3|f|f|f|f|t|f|f|f|f|f|f|f|t|f|f|f|f|f
|
||||
1.1|0|10|f|f|f|f|f|t|f|f|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|11|f|f|f|f|f|t|f|f|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|12|f|f|f|f|f|t|f|f|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|13|f|f|f|f|f|t|f|f|t|f|f|f|f|f|f|f|f|f
|
||||
1.1|0|14|f|f|f|f|t|f|f|f|f|f|t|t|t|f|f|f|f|t
|
||||
1.1|0|15|t|t|f|t|f|f|f|f|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|16|t|t|f|t|f|f|f|f|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|20|f|f|t|f|f|f|f|t|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|21|f|f|t|f|f|f|f|t|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|22|f|f|t|f|f|f|f|t|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|23|f|f|t|f|f|f|f|t|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|30|f|f|f|f|f|t|f|f|t|t|t|t|t|f|f|f|f|t
|
||||
1.1|0|31|f|f|f|f|f|t|f|f|t|t|t|t|t|f|f|f|f|f
|
||||
1.1|0|32|f|f|f|f|f|t|f|f|t|t|t|t|t|f|f|f|f|f
|
||||
1.2|0|1|f|f|f|f|f|t|f|f
|
||||
1.2|0|2|f|f|f|f|f|t|f|f
|
||||
1.2|0|3|f|f|f|f|t|f|f|f
|
||||
1.2|0|10|f|f|f|f|f|f|t|f
|
||||
1.2|0|11|f|f|f|f|f|t|f|f
|
||||
1.2|0|12|f|f|f|f|f|f|t|f
|
||||
1.2|0|13|f|f|f|f|t|f|f|f
|
||||
1.2|0|14|f|f|f|f|t|f|f|f
|
||||
1.2|0|15|t|t|f|t|f|f|f|f
|
||||
1.2|0|16|t|t|f|t|f|f|f|f
|
||||
1.2|0|20|f|f|t|f|f|f|f|t
|
||||
1.2|0|21|f|f|f|f|f|t|f|f
|
||||
1.2|0|22|f|f|f|f|f|f|t|f
|
||||
1.2|0|23|f|f|f|f|f|f|t|f
|
||||
1.2|0|30|f|f|f|f|f|t|f|f
|
||||
1.2|0|31|f|f|f|f|f|t|f|f
|
||||
1.2|0|32|f|f|f|f|f|t|f|f
|
||||
1.3|1|0|f|f|f|f|f
|
||||
1.3|2|0|f|f|f|f|f
|
||||
1.3|3|0|f|f|f|f|f
|
||||
1.3|10|0|f|f|f|f|f
|
||||
1.3|11|0|f|f|f|f|f
|
||||
1.3|12|0|f|f|f|f|f
|
||||
1.3|13|0|f|f|f|f|f
|
||||
1.3|14|0|f|f|f|f|f
|
||||
1.3|15|0|f|f|t|f|t
|
||||
1.3|16|0|f|f|t|f|t
|
||||
1.3|20|0|t|f|f|t|f
|
||||
1.3|21|0|t|f|f|t|f
|
||||
1.3|22|0|t|f|f|t|f
|
||||
1.3|23|0|t|f|f|t|f
|
||||
1.3|30|0|f|f|f|f|f
|
||||
1.3|31|0|f|f|f|f|f
|
||||
1.3|32|0|f|f|f|f|f
|
||||
1.4|1|0|f|f|f|f|f
|
||||
1.4|2|0|f|f|f|f|f
|
||||
1.4|3|0|f|f|f|f|f
|
||||
1.4|10|0|f|f|f|f|f
|
||||
1.4|11|0|f|f|f|f|f
|
||||
1.4|12|0|f|f|f|f|f
|
||||
1.4|13|0|f|f|f|f|f
|
||||
1.4|14|0|f|f|f|f|f
|
||||
1.4|15|0|f|f|t|f|t
|
||||
1.4|16|0|f|f|t|f|t
|
||||
1.4|20|0|t|f|f|t|f
|
||||
1.4|21|0|f|f|f|f|f
|
||||
1.4|22|0|f|f|f|f|f
|
||||
1.4|23|0|f|f|f|f|f
|
||||
1.4|30|0|f|f|f|f|f
|
||||
1.4|31|0|f|f|f|f|f
|
||||
1.4|32|0|f|f|f|f|f
|
||||
2.1|0|0||
|
||||
2.1|0|1||
|
||||
2.1|0|2||
|
||||
2.1|0|3||
|
||||
2.1|0|10||
|
||||
2.1|0|11||
|
||||
2.1|0|12||
|
||||
2.1|0|13||
|
||||
2.1|0|14||
|
||||
2.1|0|15||
|
||||
2.1|0|16||
|
||||
2.1|0|20||
|
||||
2.1|0|21||
|
||||
2.1|0|22||
|
||||
2.1|0|23||
|
||||
2.1|0|30||
|
||||
2.1|0|31||
|
||||
2.1|0|32||
|
||||
ERROR: Tolerance cannot be less than zero
|
||||
2.3|0|0||
|
||||
2.3|0|1||
|
||||
2.3|0|2||
|
||||
2.3|0|3||
|
||||
2.3|0|10||
|
||||
2.3|0|11||
|
||||
2.3|0|12||
|
||||
2.3|0|13||
|
||||
2.3|0|14||
|
||||
2.3|0|15||
|
||||
2.3|0|16||
|
||||
2.3|0|20||
|
||||
2.3|0|21||
|
||||
2.3|0|22||
|
||||
2.3|0|23||
|
||||
2.3|0|30||
|
||||
2.3|0|31||
|
||||
2.3|0|32||
|
||||
ERROR: Tolerance cannot be less than zero
|
|
@ -1,179 +0,0 @@
|
|||
SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_overlaps_rast;
|
||||
CREATE TABLE raster_overlaps_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(
|
||||
rid integer,
|
||||
width integer DEFAULT 2, height integer DEFAULT 2,
|
||||
ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0,
|
||||
skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0
|
||||
)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_overlaps_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_overlaps_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_overlaps_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_overlaps_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_overlaps_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_overlaps_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Overlaps(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_overlaps_rast r1
|
||||
JOIN raster_overlaps_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Overlaps(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_overlaps_rast r1
|
||||
JOIN raster_overlaps_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_overlaps_rast;
|
|
@ -1,32 +0,0 @@
|
|||
1.1|0|1|t
|
||||
1.1|0|2|t
|
||||
1.1|0|10|t
|
||||
1.1|0|11|t
|
||||
1.1|0|12|t
|
||||
1.1|0|13|t
|
||||
1.1|0|14|f
|
||||
1.1|0|15|f
|
||||
1.1|0|16|f
|
||||
1.1|0|20|f
|
||||
1.1|0|21|f
|
||||
1.1|0|22|f
|
||||
1.1|0|23|f
|
||||
1.1|0|30|t
|
||||
1.1|0|31|t
|
||||
1.1|0|32|t
|
||||
1.2|0|1|t
|
||||
1.2|0|2|t
|
||||
1.2|0|10|f
|
||||
1.2|0|11|t
|
||||
1.2|0|12|f
|
||||
1.2|0|13|f
|
||||
1.2|0|14|f
|
||||
1.2|0|15|f
|
||||
1.2|0|16|f
|
||||
1.2|0|20|f
|
||||
1.2|0|21|t
|
||||
1.2|0|22|f
|
||||
1.2|0|23|f
|
||||
1.2|0|30|t
|
||||
1.2|0|31|t
|
||||
1.2|0|32|t
|
|
@ -1,179 +0,0 @@
|
|||
SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_touches_rast;
|
||||
CREATE TABLE raster_touches_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(
|
||||
rid integer,
|
||||
width integer DEFAULT 2, height integer DEFAULT 2,
|
||||
ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0,
|
||||
skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0
|
||||
)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_touches_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_touches_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_touches_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_touches_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_touches_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_touches_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Touches(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_touches_rast r1
|
||||
JOIN raster_touches_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Touches(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_touches_rast r1
|
||||
JOIN raster_touches_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_touches_rast;
|
|
@ -1,32 +0,0 @@
|
|||
1.1|0|1|f
|
||||
1.1|0|2|f
|
||||
1.1|0|10|f
|
||||
1.1|0|11|f
|
||||
1.1|0|12|f
|
||||
1.1|0|13|f
|
||||
1.1|0|14|f
|
||||
1.1|0|15|f
|
||||
1.1|0|16|f
|
||||
1.1|0|20|f
|
||||
1.1|0|21|f
|
||||
1.1|0|22|f
|
||||
1.1|0|23|f
|
||||
1.1|0|30|f
|
||||
1.1|0|31|f
|
||||
1.1|0|32|f
|
||||
1.2|0|1|f
|
||||
1.2|0|2|f
|
||||
1.2|0|10|t
|
||||
1.2|0|11|f
|
||||
1.2|0|12|t
|
||||
1.2|0|13|f
|
||||
1.2|0|14|f
|
||||
1.2|0|15|f
|
||||
1.2|0|16|f
|
||||
1.2|0|20|f
|
||||
1.2|0|21|f
|
||||
1.2|0|22|t
|
||||
1.2|0|23|t
|
||||
1.2|0|30|f
|
||||
1.2|0|31|f
|
||||
1.2|0|32|f
|
|
@ -1,199 +0,0 @@
|
|||
SET client_min_messages TO warning;
|
||||
|
||||
DROP TABLE IF EXISTS raster_within_rast;
|
||||
CREATE TABLE raster_within_rast (
|
||||
rid integer,
|
||||
rast raster
|
||||
);
|
||||
CREATE OR REPLACE FUNCTION make_test_raster(
|
||||
rid integer,
|
||||
width integer DEFAULT 2, height integer DEFAULT 2,
|
||||
ul_x double precision DEFAULT 0, ul_y double precision DEFAULT 0,
|
||||
skew_x double precision DEFAULT 0, skew_y double precision DEFAULT 0
|
||||
)
|
||||
RETURNS void
|
||||
AS $$
|
||||
DECLARE
|
||||
x int;
|
||||
y int;
|
||||
rast raster;
|
||||
BEGIN
|
||||
rast := ST_MakeEmptyRaster(width, height, ul_x, ul_y, 1, 1, skew_x, skew_y, 0);
|
||||
rast := ST_AddBand(rast, 1, '8BUI', 1, 0);
|
||||
|
||||
|
||||
INSERT INTO raster_within_rast VALUES (rid, rast);
|
||||
|
||||
RETURN;
|
||||
END;
|
||||
$$ LANGUAGE 'plpgsql';
|
||||
SELECT make_test_raster(0, 2, 2, -1, -1);
|
||||
SELECT make_test_raster(1, 2, 2);
|
||||
SELECT make_test_raster(2, 3, 3);
|
||||
DROP FUNCTION make_test_raster(integer, integer, integer, double precision, double precision, double precision, double precision);
|
||||
|
||||
INSERT INTO raster_within_rast VALUES (10, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 1, 1, 0)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (11, (
|
||||
SELECT
|
||||
ST_SetValue(rast, 1, 2, 1, 0)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (12, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (13, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 1, 0
|
||||
),
|
||||
1, 1, 2, 0
|
||||
),
|
||||
1, 2, 2, 0
|
||||
)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (14, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, 2, 0)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (15, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, 0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (16, (
|
||||
SELECT
|
||||
ST_SetScale(
|
||||
ST_SetUpperLeft(rast, -0.1, 0.1),
|
||||
0.4, 0.4
|
||||
)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 1
|
||||
));
|
||||
|
||||
INSERT INTO raster_within_rast VALUES (20, (
|
||||
SELECT
|
||||
ST_SetUpperLeft(rast, -2, -2)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (21, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
ST_SetValue(rast, 1, 1, 1, 0),
|
||||
1, 2, 2, 0
|
||||
),
|
||||
1, 3, 3, 0
|
||||
)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 20
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (22, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 2, 0
|
||||
),
|
||||
1, 2, 3, 0
|
||||
)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 21
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (23, (
|
||||
SELECT
|
||||
ST_SetValue(
|
||||
ST_SetValue(
|
||||
rast, 1, 3, 1, 0
|
||||
),
|
||||
1, 1, 3, 0
|
||||
)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 22
|
||||
));
|
||||
|
||||
INSERT INTO raster_within_rast VALUES (30, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -0.5, 0.5)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (31, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, -1, 1)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
INSERT INTO raster_within_rast VALUES (32, (
|
||||
SELECT
|
||||
ST_SetSkew(rast, 1, -1)
|
||||
FROM raster_within_rast
|
||||
WHERE rid = 2
|
||||
));
|
||||
|
||||
SELECT
|
||||
'1.1',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Within(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_within_rast r1
|
||||
JOIN raster_within_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.2',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Within(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_within_rast r1
|
||||
JOIN raster_within_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r1.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.3',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Within(r1.rast, NULL, r2.rast, NULL)
|
||||
FROM raster_within_rast r1
|
||||
JOIN raster_within_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
SELECT
|
||||
'1.4',
|
||||
r1.rid,
|
||||
r2.rid,
|
||||
ST_Within(r1.rast, 1, r2.rast, 1)
|
||||
FROM raster_within_rast r1
|
||||
JOIN raster_within_rast r2
|
||||
ON r1.rid != r2.rid
|
||||
WHERE r2.rid = 0;
|
||||
|
||||
DROP TABLE IF EXISTS raster_within_rast;
|
|
@ -1,64 +0,0 @@
|
|||
1.1|0|1|f
|
||||
1.1|0|2|f
|
||||
1.1|0|10|f
|
||||
1.1|0|11|f
|
||||
1.1|0|12|f
|
||||
1.1|0|13|f
|
||||
1.1|0|14|f
|
||||
1.1|0|15|f
|
||||
1.1|0|16|f
|
||||
1.1|0|20|t
|
||||
1.1|0|21|t
|
||||
1.1|0|22|t
|
||||
1.1|0|23|t
|
||||
1.1|0|30|f
|
||||
1.1|0|31|f
|
||||
1.1|0|32|f
|
||||
1.2|0|1|f
|
||||
1.2|0|2|f
|
||||
1.2|0|10|f
|
||||
1.2|0|11|f
|
||||
1.2|0|12|f
|
||||
1.2|0|13|f
|
||||
1.2|0|14|f
|
||||
1.2|0|15|f
|
||||
1.2|0|16|f
|
||||
1.2|0|20|t
|
||||
1.2|0|21|f
|
||||
1.2|0|22|f
|
||||
1.2|0|23|f
|
||||
1.2|0|30|f
|
||||
1.2|0|31|f
|
||||
1.2|0|32|f
|
||||
1.3|1|0|f
|
||||
1.3|2|0|f
|
||||
1.3|10|0|f
|
||||
1.3|11|0|f
|
||||
1.3|12|0|f
|
||||
1.3|13|0|f
|
||||
1.3|14|0|f
|
||||
1.3|15|0|t
|
||||
1.3|16|0|t
|
||||
1.3|20|0|f
|
||||
1.3|21|0|f
|
||||
1.3|22|0|f
|
||||
1.3|23|0|f
|
||||
1.3|30|0|f
|
||||
1.3|31|0|f
|
||||
1.3|32|0|f
|
||||
1.4|1|0|f
|
||||
1.4|2|0|f
|
||||
1.4|10|0|f
|
||||
1.4|11|0|f
|
||||
1.4|12|0|f
|
||||
1.4|13|0|f
|
||||
1.4|14|0|f
|
||||
1.4|15|0|t
|
||||
1.4|16|0|t
|
||||
1.4|20|0|f
|
||||
1.4|21|0|f
|
||||
1.4|22|0|f
|
||||
1.4|23|0|f
|
||||
1.4|30|0|f
|
||||
1.4|31|0|f
|
||||
1.4|32|0|f
|
Loading…
Reference in a new issue