SET client_min_messages TO warning;
DROP TABLE IF EXISTS raster_contains_rast;
-DROP TABLE IF EXISTS raster_contains_geom;
CREATE TABLE raster_contains_rast (
rid integer,
rast raster
);
-CREATE TABLE raster_contains_geom (
- gid integer,
- geom geometry
-);
CREATE OR REPLACE FUNCTION make_test_raster(
rid integer,
width integer DEFAULT 2, height integer DEFAULT 2,
ON r1.rid != r2.rid
WHERE r2.rid = 0;
--- point
-INSERT INTO raster_contains_geom VALUES (
- 1, (
- SELECT ST_SetSRID(ST_MakePoint(0, 0), 0)
- )
-), (
- 2, (
- SELECT ST_SetSRID(ST_MakePoint(0.1, 0.1), 0)
- )
-), (
- 3, (
- SELECT ST_SetSRID(ST_MakePoint(-0.1, -0.1), 0)
- )
-), (
- 4, (
- SELECT ST_SetSRID(ST_MakePoint(-1, -1), 0)
- )
-), (
- 5, (
- SELECT ST_SetSRID(ST_MakePoint(-1.1, -1), 0)
- )
-), (
- 6, (
- SELECT ST_SetSRID(ST_MakePoint(-1, -1.1), 0)
- )
-), (
- 7, (
- SELECT ST_SetSRID(ST_MakePoint(-1.5, -1.5), 0)
- )
-), (
- 8, (
- SELECT ST_SetSRID(ST_MakePoint(3, 3), 0)
- )
-);
-
--- multipoint
-INSERT INTO raster_contains_geom VALUES (
- 11, (
- SELECT ST_Collect(geom) FROM raster_contains_geom WHERE gid BETWEEN 1 AND 10
- )
-), (
- 12, (
- SELECT ST_Collect(geom) FROM raster_contains_geom WHERE gid BETWEEN 3 AND 10
- )
-), (
- 13, (
- SELECT ST_Collect(geom) FROM raster_contains_geom WHERE gid BETWEEN 4 AND 10
- )
-), (
- 14, (
- SELECT ST_Collect(geom) FROM raster_contains_geom WHERE gid BETWEEN 5 AND 10
- )
-), (
- 15, (
- SELECT ST_Collect(geom) FROM raster_contains_geom WHERE gid BETWEEN 6 AND 10
- )
-);
-
--- linestring
-INSERT INTO raster_contains_geom VALUES (
- 21, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0)
- ]), 0)
- )
-), (
- 22, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1, -1),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0)
- ]), 0)
- )
-), (
- 23, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1, -1),
- ST_MakePoint(-1, 1),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, -1)
- ]), 0)
- )
-), (
- 24, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1.1, 1.1),
- ST_MakePoint(1.1, 1.1),
- ST_MakePoint(1.1, -1.1),
- ST_MakePoint(-1.1, -1.1),
- ST_MakePoint(-1.1, 1.1)
- ]), 0)
- )
-), (
- 25, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-2, 1),
- ST_MakePoint(1, 2),
- ST_MakePoint(2, -1),
- ST_MakePoint(-1, -2),
- ST_MakePoint(-2, 1)
- ]), 0)
- )
-), (
- 26, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-0.5, 0.5),
- ST_MakePoint(0, 0.5),
- ST_MakePoint(0, 0),
- ST_MakePoint(0, -0.5),
- ST_MakePoint(-0.5, 0.5)
- ]), 0)
- )
-), (
- 27, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(0.5, 0.5),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0),
- ST_MakePoint(0.5, 0.5)
- ]), 0)
- )
-), (
- 28, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(1, 1),
- ST_MakePoint(0, 2),
- ST_MakePoint(1, 2),
- ST_MakePoint(1, 1)
- ]), 0)
- )
-), (
- 29, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(0, 2),
- ST_MakePoint(1, 2),
- ST_MakePoint(1, 4),
- ST_MakePoint(0, 2)
- ]), 0)
- )
-);
-
--- polygon
-INSERT INTO raster_contains_geom VALUES (
- 31, (
- SELECT ST_MakePolygon(geom) FROM raster_contains_geom WHERE gid = 24
- )
-), (
- 32, (
- SELECT ST_MakePolygon(geom) FROM raster_contains_geom WHERE gid = 25
- )
-), (
- 33, (
- SELECT ST_MakePolygon(geom) FROM raster_contains_geom WHERE gid = 26
- )
-), (
- 34, (
- SELECT ST_MakePolygon(geom) FROM raster_contains_geom WHERE gid = 27
- )
-), (
- 35, (
- SELECT ST_MakePolygon(geom) FROM raster_contains_geom WHERE gid = 28
- )
-), (
- 36, (
- SELECT ST_MakePolygon(geom) FROM raster_contains_geom WHERE gid = 29
- )
-);
-
--- multipolygon
-INSERT INTO raster_contains_geom VALUES (
- 41, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_contains_geom WHERE gid BETWEEN 31 and 40
- )
-), (
- 42, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_contains_geom WHERE gid BETWEEN 32 and 40
- )
-), (
- 43, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_contains_geom WHERE gid BETWEEN 33 and 40
- )
-), (
- 44, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_contains_geom WHERE gid BETWEEN 34 and 40
- )
-), (
- 45, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_contains_geom WHERE gid BETWEEN 35 and 40
- )
-), (
- 46, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_contains_geom WHERE gid BETWEEN 36 and 40
- )
-);
-
-SELECT
- '2.1',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Contains(r1.rast, g1.geom)
-FROM raster_contains_rast r1
-CROSS JOIN raster_contains_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.2',
- g1.gid,
- r1.rid,
- ST_GeometryType(g1.geom),
- ST_Contains(g1.geom, r1.rast)
-FROM raster_contains_rast r1
-CROSS JOIN raster_contains_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.3',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Contains(r1.rast, g1.geom)
-FROM raster_contains_rast r1
-CROSS JOIN raster_contains_geom g1
-WHERE r1.rid = 2;
-
-SELECT
- '2.4',
- g1.gid,
- r1.rid,
- ST_GeometryType(g1.geom),
- ST_Contains(g1.geom, r1.rast)
-FROM raster_contains_rast r1
-CROSS JOIN raster_contains_geom g1
-WHERE r1.rid = 2;
-
-SELECT
- '2.5',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Contains(r1.rast, g1.geom, 1)
-FROM raster_contains_rast r1
-CROSS JOIN raster_contains_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.6',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Contains(r1.rast, g1.geom, 1)
-FROM raster_contains_rast r1
-CROSS JOIN raster_contains_geom g1
-WHERE r1.rid = 2;
-
-SELECT
- '2.7',
- g1.gid,
- r1.rid,
- ST_GeometryType(g1.geom),
- ST_Contains(g1.geom, r1.rast, 1)
-FROM raster_contains_rast r1
-CROSS JOIN raster_contains_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.8',
- g1.gid,
- r1.rid,
- ST_GeometryType(g1.geom),
- ST_Contains(g1.geom, r1.rast, 1)
-FROM raster_contains_rast r1
-CROSS JOIN raster_contains_geom g1
-WHERE r1.rid = 2;
-
DROP TABLE IF EXISTS raster_contains_rast;
-DROP TABLE IF EXISTS raster_contains_geom;
1.4|30|0|f
1.4|31|0|f
1.4|32|0|f
-2.1|0|1|ST_Point|t
-2.1|0|2|ST_Point|t
-2.1|0|3|ST_Point|t
-2.1|0|4|ST_Point|f
-2.1|0|5|ST_Point|f
-2.1|0|6|ST_Point|f
-2.1|0|7|ST_Point|f
-2.1|0|8|ST_Point|f
-2.1|0|11|ST_MultiPoint|f
-2.1|0|12|ST_MultiPoint|f
-2.1|0|13|ST_MultiPoint|f
-2.1|0|14|ST_MultiPoint|f
-2.1|0|15|ST_MultiPoint|f
-2.1|0|21|ST_LineString|f
-2.1|0|22|ST_LineString|t
-2.1|0|23|ST_LineString|f
-2.1|0|24|ST_LineString|f
-2.1|0|25|ST_LineString|f
-2.1|0|26|ST_LineString|t
-2.1|0|27|ST_LineString|t
-2.1|0|28|ST_LineString|f
-2.1|0|29|ST_LineString|f
-2.1|0|31|ST_Polygon|f
-2.1|0|32|ST_Polygon|f
-2.1|0|33|ST_Polygon|t
-2.1|0|34|ST_Polygon|t
-2.1|0|35|ST_Polygon|f
-2.1|0|36|ST_Polygon|f
-2.1|0|41|ST_MultiPolygon|f
-2.1|0|42|ST_MultiPolygon|f
-2.1|0|43|ST_MultiPolygon|f
-2.1|0|44|ST_MultiPolygon|f
-2.1|0|45|ST_MultiPolygon|f
-2.1|0|46|ST_MultiPolygon|f
-2.2|1|0|ST_Point|f
-2.2|2|0|ST_Point|f
-2.2|3|0|ST_Point|f
-2.2|4|0|ST_Point|f
-2.2|5|0|ST_Point|f
-2.2|6|0|ST_Point|f
-2.2|7|0|ST_Point|f
-2.2|8|0|ST_Point|f
-2.2|11|0|ST_MultiPoint|f
-2.2|12|0|ST_MultiPoint|f
-2.2|13|0|ST_MultiPoint|f
-2.2|14|0|ST_MultiPoint|f
-2.2|15|0|ST_MultiPoint|f
-2.2|21|0|ST_LineString|f
-2.2|22|0|ST_LineString|f
-2.2|23|0|ST_LineString|f
-2.2|24|0|ST_LineString|f
-2.2|25|0|ST_LineString|f
-2.2|26|0|ST_LineString|f
-2.2|27|0|ST_LineString|f
-2.2|28|0|ST_LineString|f
-2.2|29|0|ST_LineString|f
-2.2|31|0|ST_Polygon|t
-2.2|32|0|ST_Polygon|t
-2.2|33|0|ST_Polygon|f
-2.2|34|0|ST_Polygon|f
-2.2|35|0|ST_Polygon|f
-2.2|36|0|ST_Polygon|f
-2.2|41|0|ST_MultiPolygon|t
-2.2|42|0|ST_MultiPolygon|t
-2.2|43|0|ST_MultiPolygon|f
-2.2|44|0|ST_MultiPolygon|f
-2.2|45|0|ST_MultiPolygon|f
-2.2|46|0|ST_MultiPolygon|f
-2.3|2|1|ST_Point|f
-2.3|2|2|ST_Point|t
-2.3|2|3|ST_Point|f
-2.3|2|4|ST_Point|f
-2.3|2|5|ST_Point|f
-2.3|2|6|ST_Point|f
-2.3|2|7|ST_Point|f
-2.3|2|8|ST_Point|f
-2.3|2|11|ST_MultiPoint|f
-2.3|2|12|ST_MultiPoint|f
-2.3|2|13|ST_MultiPoint|f
-2.3|2|14|ST_MultiPoint|f
-2.3|2|15|ST_MultiPoint|f
-2.3|2|21|ST_LineString|t
-2.3|2|22|ST_LineString|f
-2.3|2|23|ST_LineString|f
-2.3|2|24|ST_LineString|f
-2.3|2|25|ST_LineString|f
-2.3|2|26|ST_LineString|f
-2.3|2|27|ST_LineString|t
-2.3|2|28|ST_LineString|t
-2.3|2|29|ST_LineString|f
-2.3|2|31|ST_Polygon|f
-2.3|2|32|ST_Polygon|f
-2.3|2|33|ST_Polygon|f
-2.3|2|34|ST_Polygon|t
-2.3|2|35|ST_Polygon|t
-2.3|2|36|ST_Polygon|f
-2.3|2|41|ST_MultiPolygon|f
-2.3|2|42|ST_MultiPolygon|f
-2.3|2|43|ST_MultiPolygon|f
-2.3|2|44|ST_MultiPolygon|f
-2.3|2|45|ST_MultiPolygon|f
-2.3|2|46|ST_MultiPolygon|f
-2.4|1|2|ST_Point|f
-2.4|2|2|ST_Point|f
-2.4|3|2|ST_Point|f
-2.4|4|2|ST_Point|f
-2.4|5|2|ST_Point|f
-2.4|6|2|ST_Point|f
-2.4|7|2|ST_Point|f
-2.4|8|2|ST_Point|f
-2.4|11|2|ST_MultiPoint|f
-2.4|12|2|ST_MultiPoint|f
-2.4|13|2|ST_MultiPoint|f
-2.4|14|2|ST_MultiPoint|f
-2.4|15|2|ST_MultiPoint|f
-2.4|21|2|ST_LineString|f
-2.4|22|2|ST_LineString|f
-2.4|23|2|ST_LineString|f
-2.4|24|2|ST_LineString|f
-2.4|25|2|ST_LineString|f
-2.4|26|2|ST_LineString|f
-2.4|27|2|ST_LineString|f
-2.4|28|2|ST_LineString|f
-2.4|29|2|ST_LineString|f
-2.4|31|2|ST_Polygon|f
-2.4|32|2|ST_Polygon|f
-2.4|33|2|ST_Polygon|f
-2.4|34|2|ST_Polygon|f
-2.4|35|2|ST_Polygon|f
-2.4|36|2|ST_Polygon|f
-2.4|41|2|ST_MultiPolygon|f
-2.4|42|2|ST_MultiPolygon|f
-2.4|43|2|ST_MultiPolygon|f
-2.4|44|2|ST_MultiPolygon|f
-2.4|45|2|ST_MultiPolygon|f
-2.4|46|2|ST_MultiPolygon|f
-2.5|0|1|ST_Point|t
-2.5|0|2|ST_Point|t
-2.5|0|3|ST_Point|t
-2.5|0|4|ST_Point|f
-2.5|0|5|ST_Point|f
-2.5|0|6|ST_Point|f
-2.5|0|7|ST_Point|f
-2.5|0|8|ST_Point|f
-2.5|0|11|ST_MultiPoint|f
-2.5|0|12|ST_MultiPoint|f
-2.5|0|13|ST_MultiPoint|f
-2.5|0|14|ST_MultiPoint|f
-2.5|0|15|ST_MultiPoint|f
-2.5|0|21|ST_LineString|f
-2.5|0|22|ST_LineString|f
-2.5|0|23|ST_LineString|f
-2.5|0|24|ST_LineString|f
-2.5|0|25|ST_LineString|f
-2.5|0|26|ST_LineString|t
-2.5|0|27|ST_LineString|f
-2.5|0|28|ST_LineString|f
-2.5|0|29|ST_LineString|f
-2.5|0|31|ST_Polygon|f
-2.5|0|32|ST_Polygon|f
-2.5|0|33|ST_Polygon|t
-2.5|0|34|ST_Polygon|t
-2.5|0|35|ST_Polygon|f
-2.5|0|36|ST_Polygon|f
-2.5|0|41|ST_MultiPolygon|f
-2.5|0|42|ST_MultiPolygon|f
-2.5|0|43|ST_MultiPolygon|f
-2.5|0|44|ST_MultiPolygon|f
-2.5|0|45|ST_MultiPolygon|f
-2.5|0|46|ST_MultiPolygon|f
-2.6|2|1|ST_Point|f
-2.6|2|2|ST_Point|t
-2.6|2|3|ST_Point|f
-2.6|2|4|ST_Point|f
-2.6|2|5|ST_Point|f
-2.6|2|6|ST_Point|f
-2.6|2|7|ST_Point|f
-2.6|2|8|ST_Point|f
-2.6|2|11|ST_MultiPoint|f
-2.6|2|12|ST_MultiPoint|f
-2.6|2|13|ST_MultiPoint|f
-2.6|2|14|ST_MultiPoint|f
-2.6|2|15|ST_MultiPoint|f
-2.6|2|21|ST_LineString|f
-2.6|2|22|ST_LineString|f
-2.6|2|23|ST_LineString|f
-2.6|2|24|ST_LineString|f
-2.6|2|25|ST_LineString|f
-2.6|2|26|ST_LineString|f
-2.6|2|27|ST_LineString|f
-2.6|2|28|ST_LineString|f
-2.6|2|29|ST_LineString|f
-2.6|2|31|ST_Polygon|f
-2.6|2|32|ST_Polygon|f
-2.6|2|33|ST_Polygon|f
-2.6|2|34|ST_Polygon|t
-2.6|2|35|ST_Polygon|t
-2.6|2|36|ST_Polygon|f
-2.6|2|41|ST_MultiPolygon|f
-2.6|2|42|ST_MultiPolygon|f
-2.6|2|43|ST_MultiPolygon|f
-2.6|2|44|ST_MultiPolygon|f
-2.6|2|45|ST_MultiPolygon|f
-2.6|2|46|ST_MultiPolygon|f
-2.7|1|0|ST_Point|f
-2.7|2|0|ST_Point|f
-2.7|3|0|ST_Point|f
-2.7|4|0|ST_Point|f
-2.7|5|0|ST_Point|f
-2.7|6|0|ST_Point|f
-2.7|7|0|ST_Point|f
-2.7|8|0|ST_Point|f
-2.7|11|0|ST_MultiPoint|f
-2.7|12|0|ST_MultiPoint|f
-2.7|13|0|ST_MultiPoint|f
-2.7|14|0|ST_MultiPoint|f
-2.7|15|0|ST_MultiPoint|f
-2.7|21|0|ST_LineString|f
-2.7|22|0|ST_LineString|f
-2.7|23|0|ST_LineString|f
-2.7|24|0|ST_LineString|f
-2.7|25|0|ST_LineString|f
-2.7|26|0|ST_LineString|f
-2.7|27|0|ST_LineString|f
-2.7|28|0|ST_LineString|f
-2.7|29|0|ST_LineString|f
-2.7|31|0|ST_Polygon|t
-2.7|32|0|ST_Polygon|t
-2.7|33|0|ST_Polygon|f
-2.7|34|0|ST_Polygon|f
-2.7|35|0|ST_Polygon|f
-2.7|36|0|ST_Polygon|f
-2.7|41|0|ST_MultiPolygon|t
-2.7|42|0|ST_MultiPolygon|t
-2.7|43|0|ST_MultiPolygon|f
-2.7|44|0|ST_MultiPolygon|f
-2.7|45|0|ST_MultiPolygon|f
-2.7|46|0|ST_MultiPolygon|f
-2.8|1|2|ST_Point|f
-2.8|2|2|ST_Point|f
-2.8|3|2|ST_Point|f
-2.8|4|2|ST_Point|f
-2.8|5|2|ST_Point|f
-2.8|6|2|ST_Point|f
-2.8|7|2|ST_Point|f
-2.8|8|2|ST_Point|f
-2.8|11|2|ST_MultiPoint|f
-2.8|12|2|ST_MultiPoint|f
-2.8|13|2|ST_MultiPoint|f
-2.8|14|2|ST_MultiPoint|f
-2.8|15|2|ST_MultiPoint|f
-2.8|21|2|ST_LineString|f
-2.8|22|2|ST_LineString|f
-2.8|23|2|ST_LineString|f
-2.8|24|2|ST_LineString|f
-2.8|25|2|ST_LineString|f
-2.8|26|2|ST_LineString|f
-2.8|27|2|ST_LineString|f
-2.8|28|2|ST_LineString|f
-2.8|29|2|ST_LineString|f
-2.8|31|2|ST_Polygon|f
-2.8|32|2|ST_Polygon|f
-2.8|33|2|ST_Polygon|f
-2.8|34|2|ST_Polygon|f
-2.8|35|2|ST_Polygon|f
-2.8|36|2|ST_Polygon|f
-2.8|41|2|ST_MultiPolygon|f
-2.8|42|2|ST_MultiPolygon|f
-2.8|43|2|ST_MultiPolygon|f
-2.8|44|2|ST_MultiPolygon|f
-2.8|45|2|ST_MultiPolygon|f
-2.8|46|2|ST_MultiPolygon|f
DROP TABLE IF EXISTS raster_intersects_rast;
-DROP TABLE IF EXISTS raster_intersects_geom;
CREATE TABLE raster_intersects_rast (
rid integer,
rast raster
);
-CREATE TABLE raster_intersects_geom (
- gid integer,
- geom geometry
-);
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 $$
ON r1.rid != r2.rid
WHERE r1.rid = 0;
--- point
-INSERT INTO raster_intersects_geom VALUES (
- 1, (
- SELECT ST_SetSRID(ST_MakePoint(0, 0), 0)
- )
-), (
- 2, (
- SELECT ST_SetSRID(ST_MakePoint(0.1, 0.1), 0)
- )
-), (
- 3, (
- SELECT ST_SetSRID(ST_MakePoint(-0.1, -0.1), 0)
- )
-), (
- 4, (
- SELECT ST_SetSRID(ST_MakePoint(-1, -1), 0)
- )
-), (
- 5, (
- SELECT ST_SetSRID(ST_MakePoint(-1.1, -1), 0)
- )
-), (
- 6, (
- SELECT ST_SetSRID(ST_MakePoint(-1, -1.1), 0)
- )
-), (
- 7, (
- SELECT ST_SetSRID(ST_MakePoint(-1.5, -1.5), 0)
- )
-), (
- 8, (
- SELECT ST_SetSRID(ST_MakePoint(3, 3), 0)
- )
-);
-
--- multipoint
-INSERT INTO raster_intersects_geom VALUES (
- 11, (
- SELECT ST_Collect(geom) FROM raster_intersects_geom WHERE gid BETWEEN 1 AND 10
- )
-), (
- 12, (
- SELECT ST_Collect(geom) FROM raster_intersects_geom WHERE gid BETWEEN 3 AND 10
- )
-), (
- 13, (
- SELECT ST_Collect(geom) FROM raster_intersects_geom WHERE gid BETWEEN 4 AND 10
- )
-), (
- 14, (
- SELECT ST_Collect(geom) FROM raster_intersects_geom WHERE gid BETWEEN 5 AND 10
- )
-), (
- 15, (
- SELECT ST_Collect(geom) FROM raster_intersects_geom WHERE gid BETWEEN 6 AND 10
- )
-);
-
--- linestring
-INSERT INTO raster_intersects_geom VALUES (
- 21, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0)
- ]), 0)
- )
-), (
- 22, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1, -1),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0)
- ]), 0)
- )
-), (
- 23, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1, -1),
- ST_MakePoint(-1, 1),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, -1)
- ]), 0)
- )
-), (
- 24, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1.1, 1.1),
- ST_MakePoint(1.1, 1.1),
- ST_MakePoint(1.1, -1.1),
- ST_MakePoint(-1.1, -1.1),
- ST_MakePoint(-1.1, 1.1)
- ]), 0)
- )
-), (
- 25, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-2, 1),
- ST_MakePoint(1, 2),
- ST_MakePoint(2, -1),
- ST_MakePoint(-1, -2),
- ST_MakePoint(-2, 1)
- ]), 0)
- )
-), (
- 26, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-0.5, 0.5),
- ST_MakePoint(0, 0.5),
- ST_MakePoint(0, 0),
- ST_MakePoint(0, -0.5),
- ST_MakePoint(-0.5, 0.5)
- ]), 0)
- )
-), (
- 27, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(0.5, 0.5),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0),
- ST_MakePoint(0.5, 0.5)
- ]), 0)
- )
-), (
- 28, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(1, 1),
- ST_MakePoint(0, 2),
- ST_MakePoint(1, 2),
- ST_MakePoint(1, 1)
- ]), 0)
- )
-), (
- 29, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(0, 2),
- ST_MakePoint(1, 2),
- ST_MakePoint(1, 4),
- ST_MakePoint(0, 2)
- ]), 0)
- )
-);
-
--- polygon
-INSERT INTO raster_intersects_geom VALUES (
- 31, (
- SELECT ST_MakePolygon(geom) FROM raster_intersects_geom WHERE gid = 24
- )
-), (
- 32, (
- SELECT ST_MakePolygon(geom) FROM raster_intersects_geom WHERE gid = 25
- )
-), (
- 33, (
- SELECT ST_MakePolygon(geom) FROM raster_intersects_geom WHERE gid = 26
- )
-), (
- 34, (
- SELECT ST_MakePolygon(geom) FROM raster_intersects_geom WHERE gid = 27
- )
-), (
- 35, (
- SELECT ST_MakePolygon(geom) FROM raster_intersects_geom WHERE gid = 28
- )
-), (
- 36, (
- SELECT ST_MakePolygon(geom) FROM raster_intersects_geom WHERE gid = 29
- )
-);
-
--- multipolygon
-INSERT INTO raster_intersects_geom VALUES (
- 41, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_intersects_geom WHERE gid BETWEEN 31 and 40
- )
-), (
- 42, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_intersects_geom WHERE gid BETWEEN 32 and 40
- )
-), (
- 43, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_intersects_geom WHERE gid BETWEEN 33 and 40
- )
-), (
- 44, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_intersects_geom WHERE gid BETWEEN 34 and 40
- )
-), (
- 45, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_intersects_geom WHERE gid BETWEEN 35 and 40
- )
-), (
- 46, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_intersects_geom WHERE gid BETWEEN 36 and 40
- )
-);
-
-SELECT
- '2.1',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Intersects(r1.rast, g1.geom)
-FROM raster_intersects_rast r1
-CROSS JOIN raster_intersects_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.2',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Intersects(g1.geom, r1.rast)
-FROM raster_intersects_rast r1
-CROSS JOIN raster_intersects_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.3',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Intersects(r1.rast, g1.geom)
-FROM raster_intersects_rast r1
-CROSS JOIN raster_intersects_geom g1
-WHERE r1.rid = 2;
-
-SELECT
- '2.4',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Intersects(g1.geom, r1.rast)
-FROM raster_intersects_rast r1
-CROSS JOIN raster_intersects_geom g1
-WHERE r1.rid = 2;
-
-SELECT
- '2.5',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Intersects(r1.rast, g1.geom, 1)
-FROM raster_intersects_rast r1
-CROSS JOIN raster_intersects_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.6',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Intersects(r1.rast, g1.geom, 1)
-FROM raster_intersects_rast r1
-CROSS JOIN raster_intersects_geom g1
-WHERE r1.rid = 2;
-
DROP TABLE IF EXISTS raster_intersects_rast;
-DROP TABLE IF EXISTS raster_intersects_geom;
NOTICE: table "raster_intersects_rast" does not exist, skipping
-NOTICE: table "raster_intersects_geom" does not exist, skipping
1.1|0|1|t
1.1|0|2|t
1.1|0|10|t
1.2|0|30|t
1.2|0|31|t
1.2|0|32|t
-2.1|0|1|ST_Point|t
-2.1|0|2|ST_Point|t
-2.1|0|3|ST_Point|t
-2.1|0|4|ST_Point|t
-2.1|0|5|ST_Point|f
-2.1|0|6|ST_Point|f
-2.1|0|7|ST_Point|f
-2.1|0|8|ST_Point|f
-2.1|0|11|ST_MultiPoint|t
-2.1|0|12|ST_MultiPoint|t
-2.1|0|13|ST_MultiPoint|t
-2.1|0|14|ST_MultiPoint|f
-2.1|0|15|ST_MultiPoint|f
-2.1|0|21|ST_LineString|t
-2.1|0|22|ST_LineString|t
-2.1|0|23|ST_LineString|t
-2.1|0|24|ST_LineString|f
-2.1|0|25|ST_LineString|f
-2.1|0|26|ST_LineString|t
-2.1|0|27|ST_LineString|t
-2.1|0|28|ST_LineString|t
-2.1|0|29|ST_LineString|f
-2.1|0|31|ST_Polygon|t
-2.1|0|32|ST_Polygon|t
-2.1|0|33|ST_Polygon|t
-2.1|0|34|ST_Polygon|t
-2.1|0|35|ST_Polygon|t
-2.1|0|36|ST_Polygon|f
-2.1|0|41|ST_MultiPolygon|t
-2.1|0|42|ST_MultiPolygon|t
-2.1|0|43|ST_MultiPolygon|t
-2.1|0|44|ST_MultiPolygon|t
-2.1|0|45|ST_MultiPolygon|t
-2.1|0|46|ST_MultiPolygon|f
-2.2|0|1|ST_Point|t
-2.2|0|2|ST_Point|t
-2.2|0|3|ST_Point|t
-2.2|0|4|ST_Point|t
-2.2|0|5|ST_Point|f
-2.2|0|6|ST_Point|f
-2.2|0|7|ST_Point|f
-2.2|0|8|ST_Point|f
-2.2|0|11|ST_MultiPoint|t
-2.2|0|12|ST_MultiPoint|t
-2.2|0|13|ST_MultiPoint|t
-2.2|0|14|ST_MultiPoint|f
-2.2|0|15|ST_MultiPoint|f
-2.2|0|21|ST_LineString|t
-2.2|0|22|ST_LineString|t
-2.2|0|23|ST_LineString|t
-2.2|0|24|ST_LineString|f
-2.2|0|25|ST_LineString|f
-2.2|0|26|ST_LineString|t
-2.2|0|27|ST_LineString|t
-2.2|0|28|ST_LineString|t
-2.2|0|29|ST_LineString|f
-2.2|0|31|ST_Polygon|t
-2.2|0|32|ST_Polygon|t
-2.2|0|33|ST_Polygon|t
-2.2|0|34|ST_Polygon|t
-2.2|0|35|ST_Polygon|t
-2.2|0|36|ST_Polygon|f
-2.2|0|41|ST_MultiPolygon|t
-2.2|0|42|ST_MultiPolygon|t
-2.2|0|43|ST_MultiPolygon|t
-2.2|0|44|ST_MultiPolygon|t
-2.2|0|45|ST_MultiPolygon|t
-2.2|0|46|ST_MultiPolygon|f
-2.3|2|1|ST_Point|t
-2.3|2|2|ST_Point|t
-2.3|2|3|ST_Point|f
-2.3|2|4|ST_Point|f
-2.3|2|5|ST_Point|f
-2.3|2|6|ST_Point|f
-2.3|2|7|ST_Point|f
-2.3|2|8|ST_Point|t
-2.3|2|11|ST_MultiPoint|t
-2.3|2|12|ST_MultiPoint|t
-2.3|2|13|ST_MultiPoint|t
-2.3|2|14|ST_MultiPoint|t
-2.3|2|15|ST_MultiPoint|t
-2.3|2|21|ST_LineString|t
-2.3|2|22|ST_LineString|t
-2.3|2|23|ST_LineString|t
-2.3|2|24|ST_LineString|t
-2.3|2|25|ST_LineString|t
-2.3|2|26|ST_LineString|t
-2.3|2|27|ST_LineString|t
-2.3|2|28|ST_LineString|t
-2.3|2|29|ST_LineString|t
-2.3|2|31|ST_Polygon|t
-2.3|2|32|ST_Polygon|t
-2.3|2|33|ST_Polygon|t
-2.3|2|34|ST_Polygon|t
-2.3|2|35|ST_Polygon|t
-2.3|2|36|ST_Polygon|t
-2.3|2|41|ST_MultiPolygon|t
-2.3|2|42|ST_MultiPolygon|t
-2.3|2|43|ST_MultiPolygon|t
-2.3|2|44|ST_MultiPolygon|t
-2.3|2|45|ST_MultiPolygon|t
-2.3|2|46|ST_MultiPolygon|t
-2.4|2|1|ST_Point|t
-2.4|2|2|ST_Point|t
-2.4|2|3|ST_Point|f
-2.4|2|4|ST_Point|f
-2.4|2|5|ST_Point|f
-2.4|2|6|ST_Point|f
-2.4|2|7|ST_Point|f
-2.4|2|8|ST_Point|t
-2.4|2|11|ST_MultiPoint|t
-2.4|2|12|ST_MultiPoint|t
-2.4|2|13|ST_MultiPoint|t
-2.4|2|14|ST_MultiPoint|t
-2.4|2|15|ST_MultiPoint|t
-2.4|2|21|ST_LineString|t
-2.4|2|22|ST_LineString|t
-2.4|2|23|ST_LineString|t
-2.4|2|24|ST_LineString|t
-2.4|2|25|ST_LineString|t
-2.4|2|26|ST_LineString|t
-2.4|2|27|ST_LineString|t
-2.4|2|28|ST_LineString|t
-2.4|2|29|ST_LineString|t
-2.4|2|31|ST_Polygon|t
-2.4|2|32|ST_Polygon|t
-2.4|2|33|ST_Polygon|t
-2.4|2|34|ST_Polygon|t
-2.4|2|35|ST_Polygon|t
-2.4|2|36|ST_Polygon|t
-2.4|2|41|ST_MultiPolygon|t
-2.4|2|42|ST_MultiPolygon|t
-2.4|2|43|ST_MultiPolygon|t
-2.4|2|44|ST_MultiPolygon|t
-2.4|2|45|ST_MultiPolygon|t
-2.4|2|46|ST_MultiPolygon|t
-2.5|0|1|ST_Point|t
-2.5|0|2|ST_Point|t
-2.5|0|3|ST_Point|t
-2.5|0|4|ST_Point|t
-2.5|0|5|ST_Point|f
-2.5|0|6|ST_Point|f
-2.5|0|7|ST_Point|f
-2.5|0|8|ST_Point|f
-2.5|0|11|ST_MultiPoint|t
-2.5|0|12|ST_MultiPoint|t
-2.5|0|13|ST_MultiPoint|t
-2.5|0|14|ST_MultiPoint|f
-2.5|0|15|ST_MultiPoint|f
-2.5|0|21|ST_LineString|t
-2.5|0|22|ST_LineString|t
-2.5|0|23|ST_LineString|t
-2.5|0|24|ST_LineString|f
-2.5|0|25|ST_LineString|f
-2.5|0|26|ST_LineString|t
-2.5|0|27|ST_LineString|t
-2.5|0|28|ST_LineString|t
-2.5|0|29|ST_LineString|f
-2.5|0|31|ST_Polygon|t
-2.5|0|32|ST_Polygon|t
-2.5|0|33|ST_Polygon|t
-2.5|0|34|ST_Polygon|t
-2.5|0|35|ST_Polygon|f
-2.5|0|36|ST_Polygon|f
-2.5|0|41|ST_MultiPolygon|t
-2.5|0|42|ST_MultiPolygon|t
-2.5|0|43|ST_MultiPolygon|t
-2.5|0|44|ST_MultiPolygon|t
-2.5|0|45|ST_MultiPolygon|f
-2.5|0|46|ST_MultiPolygon|f
-2.6|2|1|ST_Point|t
-2.6|2|2|ST_Point|t
-2.6|2|3|ST_Point|f
-2.6|2|4|ST_Point|f
-2.6|2|5|ST_Point|f
-2.6|2|6|ST_Point|f
-2.6|2|7|ST_Point|f
-2.6|2|8|ST_Point|t
-2.6|2|11|ST_MultiPoint|t
-2.6|2|12|ST_MultiPoint|t
-2.6|2|13|ST_MultiPoint|t
-2.6|2|14|ST_MultiPoint|t
-2.6|2|15|ST_MultiPoint|t
-2.6|2|21|ST_LineString|t
-2.6|2|22|ST_LineString|t
-2.6|2|23|ST_LineString|t
-2.6|2|24|ST_LineString|t
-2.6|2|25|ST_LineString|t
-2.6|2|26|ST_LineString|t
-2.6|2|27|ST_LineString|t
-2.6|2|28|ST_LineString|t
-2.6|2|29|ST_LineString|t
-2.6|2|31|ST_Polygon|t
-2.6|2|32|ST_Polygon|t
-2.6|2|33|ST_Polygon|t
-2.6|2|34|ST_Polygon|t
-2.6|2|35|ST_Polygon|t
-2.6|2|36|ST_Polygon|t
-2.6|2|41|ST_MultiPolygon|t
-2.6|2|42|ST_MultiPolygon|t
-2.6|2|43|ST_MultiPolygon|t
-2.6|2|44|ST_MultiPolygon|t
-2.6|2|45|ST_MultiPolygon|t
-2.6|2|46|ST_MultiPolygon|t
SET client_min_messages TO warning;
DROP TABLE IF EXISTS raster_overlaps_rast;
-DROP TABLE IF EXISTS raster_overlaps_geom;
CREATE TABLE raster_overlaps_rast (
rid integer,
rast raster
);
-CREATE TABLE raster_overlaps_geom (
- gid integer,
- geom geometry
-);
CREATE OR REPLACE FUNCTION make_test_raster(
rid integer,
width integer DEFAULT 2, height integer DEFAULT 2,
ON r1.rid != r2.rid
WHERE r1.rid = 0;
--- point
-INSERT INTO raster_overlaps_geom VALUES (
- 1, (
- SELECT ST_SetSRID(ST_MakePoint(0, 0), 0)
- )
-), (
- 2, (
- SELECT ST_SetSRID(ST_MakePoint(0.1, 0.1), 0)
- )
-), (
- 3, (
- SELECT ST_SetSRID(ST_MakePoint(-0.1, -0.1), 0)
- )
-), (
- 4, (
- SELECT ST_SetSRID(ST_MakePoint(-1, -1), 0)
- )
-), (
- 5, (
- SELECT ST_SetSRID(ST_MakePoint(-1.1, -1), 0)
- )
-), (
- 6, (
- SELECT ST_SetSRID(ST_MakePoint(-1, -1.1), 0)
- )
-), (
- 7, (
- SELECT ST_SetSRID(ST_MakePoint(-1.5, -1.5), 0)
- )
-), (
- 8, (
- SELECT ST_SetSRID(ST_MakePoint(3, 3), 0)
- )
-);
-
--- multipoint
-INSERT INTO raster_overlaps_geom VALUES (
- 11, (
- SELECT ST_Collect(geom) FROM raster_overlaps_geom WHERE gid BETWEEN 1 AND 10
- )
-), (
- 12, (
- SELECT ST_Collect(geom) FROM raster_overlaps_geom WHERE gid BETWEEN 3 AND 10
- )
-), (
- 13, (
- SELECT ST_Collect(geom) FROM raster_overlaps_geom WHERE gid BETWEEN 4 AND 10
- )
-), (
- 14, (
- SELECT ST_Collect(geom) FROM raster_overlaps_geom WHERE gid BETWEEN 5 AND 10
- )
-), (
- 15, (
- SELECT ST_Collect(geom) FROM raster_overlaps_geom WHERE gid BETWEEN 6 AND 10
- )
-);
-
--- linestring
-INSERT INTO raster_overlaps_geom VALUES (
- 21, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0)
- ]), 0)
- )
-), (
- 22, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1, -1),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0)
- ]), 0)
- )
-), (
- 23, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1, -1),
- ST_MakePoint(-1, 1),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, -1)
- ]), 0)
- )
-), (
- 24, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1.1, 1.1),
- ST_MakePoint(1.1, 1.1),
- ST_MakePoint(1.1, -1.1),
- ST_MakePoint(-1.1, -1.1),
- ST_MakePoint(-1.1, 1.1)
- ]), 0)
- )
-), (
- 25, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-2, 1),
- ST_MakePoint(1, 2),
- ST_MakePoint(2, -1),
- ST_MakePoint(-1, -2),
- ST_MakePoint(-2, 1)
- ]), 0)
- )
-), (
- 26, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-0.5, 0.5),
- ST_MakePoint(0, 0.5),
- ST_MakePoint(0, 0),
- ST_MakePoint(0, -0.5),
- ST_MakePoint(-0.5, 0.5)
- ]), 0)
- )
-), (
- 27, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(0.5, 0.5),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0),
- ST_MakePoint(0.5, 0.5)
- ]), 0)
- )
-), (
- 28, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(1, 1),
- ST_MakePoint(0, 2),
- ST_MakePoint(1, 2),
- ST_MakePoint(1, 1)
- ]), 0)
- )
-), (
- 29, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(0, 2),
- ST_MakePoint(1, 2),
- ST_MakePoint(1, 4),
- ST_MakePoint(0, 2)
- ]), 0)
- )
-);
-
--- polygon
-INSERT INTO raster_overlaps_geom VALUES (
- 31, (
- SELECT ST_MakePolygon(geom) FROM raster_overlaps_geom WHERE gid = 24
- )
-), (
- 32, (
- SELECT ST_MakePolygon(geom) FROM raster_overlaps_geom WHERE gid = 25
- )
-), (
- 33, (
- SELECT ST_MakePolygon(geom) FROM raster_overlaps_geom WHERE gid = 26
- )
-), (
- 34, (
- SELECT ST_MakePolygon(geom) FROM raster_overlaps_geom WHERE gid = 27
- )
-), (
- 35, (
- SELECT ST_MakePolygon(geom) FROM raster_overlaps_geom WHERE gid = 28
- )
-), (
- 36, (
- SELECT ST_MakePolygon(geom) FROM raster_overlaps_geom WHERE gid = 29
- )
-);
-
--- multipolygon
-INSERT INTO raster_overlaps_geom VALUES (
- 41, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_overlaps_geom WHERE gid BETWEEN 31 and 40
- )
-), (
- 42, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_overlaps_geom WHERE gid BETWEEN 32 and 40
- )
-), (
- 43, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_overlaps_geom WHERE gid BETWEEN 33 and 40
- )
-), (
- 44, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_overlaps_geom WHERE gid BETWEEN 34 and 40
- )
-), (
- 45, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_overlaps_geom WHERE gid BETWEEN 35 and 40
- )
-), (
- 46, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_overlaps_geom WHERE gid BETWEEN 36 and 40
- )
-);
-
-SELECT
- '2.1',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Overlaps(r1.rast, g1.geom)
-FROM raster_overlaps_rast r1
-CROSS JOIN raster_overlaps_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.2',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Overlaps(g1.geom, r1.rast)
-FROM raster_overlaps_rast r1
-CROSS JOIN raster_overlaps_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.3',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Overlaps(r1.rast, g1.geom)
-FROM raster_overlaps_rast r1
-CROSS JOIN raster_overlaps_geom g1
-WHERE r1.rid = 2;
-
-SELECT
- '2.4',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Overlaps(g1.geom, r1.rast)
-FROM raster_overlaps_rast r1
-CROSS JOIN raster_overlaps_geom g1
-WHERE r1.rid = 2;
-
-SELECT
- '2.5',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Overlaps(r1.rast, g1.geom, 1)
-FROM raster_overlaps_rast r1
-CROSS JOIN raster_overlaps_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.6',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Overlaps(r1.rast, g1.geom, 1)
-FROM raster_overlaps_rast r1
-CROSS JOIN raster_overlaps_geom g1
-WHERE r1.rid = 2;
-
DROP TABLE IF EXISTS raster_overlaps_rast;
-DROP TABLE IF EXISTS raster_overlaps_geom;
1.2|0|30|t
1.2|0|31|t
1.2|0|32|t
-2.1|0|1|ST_Point|f
-2.1|0|2|ST_Point|f
-2.1|0|3|ST_Point|f
-2.1|0|4|ST_Point|f
-2.1|0|5|ST_Point|f
-2.1|0|6|ST_Point|f
-2.1|0|7|ST_Point|f
-2.1|0|8|ST_Point|f
-2.1|0|11|ST_MultiPoint|f
-2.1|0|12|ST_MultiPoint|f
-2.1|0|13|ST_MultiPoint|f
-2.1|0|14|ST_MultiPoint|f
-2.1|0|15|ST_MultiPoint|f
-2.1|0|21|ST_LineString|f
-2.1|0|22|ST_LineString|f
-2.1|0|23|ST_LineString|f
-2.1|0|24|ST_LineString|f
-2.1|0|25|ST_LineString|f
-2.1|0|26|ST_LineString|f
-2.1|0|27|ST_LineString|f
-2.1|0|28|ST_LineString|f
-2.1|0|29|ST_LineString|f
-2.1|0|31|ST_Polygon|f
-2.1|0|32|ST_Polygon|f
-2.1|0|33|ST_Polygon|f
-2.1|0|34|ST_Polygon|f
-2.1|0|35|ST_Polygon|f
-2.1|0|36|ST_Polygon|f
-2.1|0|41|ST_MultiPolygon|f
-2.1|0|42|ST_MultiPolygon|f
-2.1|0|43|ST_MultiPolygon|t
-2.1|0|44|ST_MultiPolygon|t
-2.1|0|45|ST_MultiPolygon|f
-2.1|0|46|ST_MultiPolygon|f
-2.2|0|1|ST_Point|f
-2.2|0|2|ST_Point|f
-2.2|0|3|ST_Point|f
-2.2|0|4|ST_Point|f
-2.2|0|5|ST_Point|f
-2.2|0|6|ST_Point|f
-2.2|0|7|ST_Point|f
-2.2|0|8|ST_Point|f
-2.2|0|11|ST_MultiPoint|f
-2.2|0|12|ST_MultiPoint|f
-2.2|0|13|ST_MultiPoint|f
-2.2|0|14|ST_MultiPoint|f
-2.2|0|15|ST_MultiPoint|f
-2.2|0|21|ST_LineString|f
-2.2|0|22|ST_LineString|f
-2.2|0|23|ST_LineString|f
-2.2|0|24|ST_LineString|f
-2.2|0|25|ST_LineString|f
-2.2|0|26|ST_LineString|f
-2.2|0|27|ST_LineString|f
-2.2|0|28|ST_LineString|f
-2.2|0|29|ST_LineString|f
-2.2|0|31|ST_Polygon|f
-2.2|0|32|ST_Polygon|f
-2.2|0|33|ST_Polygon|f
-2.2|0|34|ST_Polygon|f
-2.2|0|35|ST_Polygon|f
-2.2|0|36|ST_Polygon|f
-2.2|0|41|ST_MultiPolygon|f
-2.2|0|42|ST_MultiPolygon|f
-2.2|0|43|ST_MultiPolygon|t
-2.2|0|44|ST_MultiPolygon|t
-2.2|0|45|ST_MultiPolygon|f
-2.2|0|46|ST_MultiPolygon|f
-2.3|2|1|ST_Point|f
-2.3|2|2|ST_Point|f
-2.3|2|3|ST_Point|f
-2.3|2|4|ST_Point|f
-2.3|2|5|ST_Point|f
-2.3|2|6|ST_Point|f
-2.3|2|7|ST_Point|f
-2.3|2|8|ST_Point|f
-2.3|2|11|ST_MultiPoint|f
-2.3|2|12|ST_MultiPoint|f
-2.3|2|13|ST_MultiPoint|f
-2.3|2|14|ST_MultiPoint|f
-2.3|2|15|ST_MultiPoint|f
-2.3|2|21|ST_LineString|f
-2.3|2|22|ST_LineString|f
-2.3|2|23|ST_LineString|f
-2.3|2|24|ST_LineString|f
-2.3|2|25|ST_LineString|f
-2.3|2|26|ST_LineString|f
-2.3|2|27|ST_LineString|f
-2.3|2|28|ST_LineString|f
-2.3|2|29|ST_LineString|f
-2.3|2|31|ST_Polygon|t
-2.3|2|32|ST_Polygon|t
-2.3|2|33|ST_Polygon|f
-2.3|2|34|ST_Polygon|f
-2.3|2|35|ST_Polygon|f
-2.3|2|36|ST_Polygon|t
-2.3|2|41|ST_MultiPolygon|t
-2.3|2|42|ST_MultiPolygon|t
-2.3|2|43|ST_MultiPolygon|t
-2.3|2|44|ST_MultiPolygon|t
-2.3|2|45|ST_MultiPolygon|t
-2.3|2|46|ST_MultiPolygon|t
-2.4|2|1|ST_Point|f
-2.4|2|2|ST_Point|f
-2.4|2|3|ST_Point|f
-2.4|2|4|ST_Point|f
-2.4|2|5|ST_Point|f
-2.4|2|6|ST_Point|f
-2.4|2|7|ST_Point|f
-2.4|2|8|ST_Point|f
-2.4|2|11|ST_MultiPoint|f
-2.4|2|12|ST_MultiPoint|f
-2.4|2|13|ST_MultiPoint|f
-2.4|2|14|ST_MultiPoint|f
-2.4|2|15|ST_MultiPoint|f
-2.4|2|21|ST_LineString|f
-2.4|2|22|ST_LineString|f
-2.4|2|23|ST_LineString|f
-2.4|2|24|ST_LineString|f
-2.4|2|25|ST_LineString|f
-2.4|2|26|ST_LineString|f
-2.4|2|27|ST_LineString|f
-2.4|2|28|ST_LineString|f
-2.4|2|29|ST_LineString|f
-2.4|2|31|ST_Polygon|t
-2.4|2|32|ST_Polygon|t
-2.4|2|33|ST_Polygon|f
-2.4|2|34|ST_Polygon|f
-2.4|2|35|ST_Polygon|f
-2.4|2|36|ST_Polygon|t
-2.4|2|41|ST_MultiPolygon|t
-2.4|2|42|ST_MultiPolygon|t
-2.4|2|43|ST_MultiPolygon|t
-2.4|2|44|ST_MultiPolygon|t
-2.4|2|45|ST_MultiPolygon|t
-2.4|2|46|ST_MultiPolygon|t
-2.5|0|1|ST_Point|f
-2.5|0|2|ST_Point|f
-2.5|0|3|ST_Point|f
-2.5|0|4|ST_Point|f
-2.5|0|5|ST_Point|f
-2.5|0|6|ST_Point|f
-2.5|0|7|ST_Point|f
-2.5|0|8|ST_Point|f
-2.5|0|11|ST_MultiPoint|f
-2.5|0|12|ST_MultiPoint|f
-2.5|0|13|ST_MultiPoint|f
-2.5|0|14|ST_MultiPoint|f
-2.5|0|15|ST_MultiPoint|f
-2.5|0|21|ST_LineString|f
-2.5|0|22|ST_LineString|f
-2.5|0|23|ST_LineString|f
-2.5|0|24|ST_LineString|f
-2.5|0|25|ST_LineString|f
-2.5|0|26|ST_LineString|f
-2.5|0|27|ST_LineString|f
-2.5|0|28|ST_LineString|f
-2.5|0|29|ST_LineString|f
-2.5|0|31|ST_Polygon|f
-2.5|0|32|ST_Polygon|f
-2.5|0|33|ST_Polygon|f
-2.5|0|34|ST_Polygon|f
-2.5|0|35|ST_Polygon|f
-2.5|0|36|ST_Polygon|f
-2.5|0|41|ST_MultiPolygon|f
-2.5|0|42|ST_MultiPolygon|f
-2.5|0|43|ST_MultiPolygon|t
-2.5|0|44|ST_MultiPolygon|t
-2.5|0|45|ST_MultiPolygon|f
-2.5|0|46|ST_MultiPolygon|f
-2.6|2|1|ST_Point|f
-2.6|2|2|ST_Point|f
-2.6|2|3|ST_Point|f
-2.6|2|4|ST_Point|f
-2.6|2|5|ST_Point|f
-2.6|2|6|ST_Point|f
-2.6|2|7|ST_Point|f
-2.6|2|8|ST_Point|f
-2.6|2|11|ST_MultiPoint|f
-2.6|2|12|ST_MultiPoint|f
-2.6|2|13|ST_MultiPoint|f
-2.6|2|14|ST_MultiPoint|f
-2.6|2|15|ST_MultiPoint|f
-2.6|2|21|ST_LineString|f
-2.6|2|22|ST_LineString|f
-2.6|2|23|ST_LineString|f
-2.6|2|24|ST_LineString|f
-2.6|2|25|ST_LineString|f
-2.6|2|26|ST_LineString|f
-2.6|2|27|ST_LineString|f
-2.6|2|28|ST_LineString|f
-2.6|2|29|ST_LineString|f
-2.6|2|31|ST_Polygon|t
-2.6|2|32|ST_Polygon|t
-2.6|2|33|ST_Polygon|f
-2.6|2|34|ST_Polygon|f
-2.6|2|35|ST_Polygon|f
-2.6|2|36|ST_Polygon|t
-2.6|2|41|ST_MultiPolygon|t
-2.6|2|42|ST_MultiPolygon|t
-2.6|2|43|ST_MultiPolygon|t
-2.6|2|44|ST_MultiPolygon|t
-2.6|2|45|ST_MultiPolygon|t
-2.6|2|46|ST_MultiPolygon|t
SET client_min_messages TO warning;
DROP TABLE IF EXISTS raster_touches_rast;
-DROP TABLE IF EXISTS raster_touches_geom;
CREATE TABLE raster_touches_rast (
rid integer,
rast raster
);
-CREATE TABLE raster_touches_geom (
- gid integer,
- geom geometry
-);
CREATE OR REPLACE FUNCTION make_test_raster(
rid integer,
width integer DEFAULT 2, height integer DEFAULT 2,
ON r1.rid != r2.rid
WHERE r1.rid = 0;
--- point
-INSERT INTO raster_touches_geom VALUES (
- 1, (
- SELECT ST_SetSRID(ST_MakePoint(0, 0), 0)
- )
-), (
- 2, (
- SELECT ST_SetSRID(ST_MakePoint(0.1, 0.1), 0)
- )
-), (
- 3, (
- SELECT ST_SetSRID(ST_MakePoint(-0.1, -0.1), 0)
- )
-), (
- 4, (
- SELECT ST_SetSRID(ST_MakePoint(-1, -1), 0)
- )
-), (
- 5, (
- SELECT ST_SetSRID(ST_MakePoint(-1.1, -1), 0)
- )
-), (
- 6, (
- SELECT ST_SetSRID(ST_MakePoint(-1, -1.1), 0)
- )
-), (
- 7, (
- SELECT ST_SetSRID(ST_MakePoint(-1.5, -1.5), 0)
- )
-), (
- 8, (
- SELECT ST_SetSRID(ST_MakePoint(3, 3), 0)
- )
-);
-
--- multipoint
-INSERT INTO raster_touches_geom VALUES (
- 11, (
- SELECT ST_Collect(geom) FROM raster_touches_geom WHERE gid BETWEEN 1 AND 10
- )
-), (
- 12, (
- SELECT ST_Collect(geom) FROM raster_touches_geom WHERE gid BETWEEN 3 AND 10
- )
-), (
- 13, (
- SELECT ST_Collect(geom) FROM raster_touches_geom WHERE gid BETWEEN 4 AND 10
- )
-), (
- 14, (
- SELECT ST_Collect(geom) FROM raster_touches_geom WHERE gid BETWEEN 5 AND 10
- )
-), (
- 15, (
- SELECT ST_Collect(geom) FROM raster_touches_geom WHERE gid BETWEEN 6 AND 10
- )
-);
-
--- linestring
-INSERT INTO raster_touches_geom VALUES (
- 21, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0)
- ]), 0)
- )
-), (
- 22, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1, -1),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0)
- ]), 0)
- )
-), (
- 23, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1, -1),
- ST_MakePoint(-1, 1),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, -1)
- ]), 0)
- )
-), (
- 24, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-1.1, 1.1),
- ST_MakePoint(1.1, 1.1),
- ST_MakePoint(1.1, -1.1),
- ST_MakePoint(-1.1, -1.1),
- ST_MakePoint(-1.1, 1.1)
- ]), 0)
- )
-), (
- 25, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-2, 1),
- ST_MakePoint(1, 2),
- ST_MakePoint(2, -1),
- ST_MakePoint(-1, -2),
- ST_MakePoint(-2, 1)
- ]), 0)
- )
-), (
- 26, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(-0.5, 0.5),
- ST_MakePoint(0, 0.5),
- ST_MakePoint(0, 0),
- ST_MakePoint(0, -0.5),
- ST_MakePoint(-0.5, 0.5)
- ]), 0)
- )
-), (
- 27, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(0.5, 0.5),
- ST_MakePoint(1, 1),
- ST_MakePoint(1, 0),
- ST_MakePoint(0.5, 0.5)
- ]), 0)
- )
-), (
- 28, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(1, 1),
- ST_MakePoint(0, 2),
- ST_MakePoint(1, 2),
- ST_MakePoint(1, 1)
- ]), 0)
- )
-), (
- 29, (
- SELECT ST_SetSRID(ST_MakeLine(ARRAY[
- ST_MakePoint(0, 2),
- ST_MakePoint(1, 2),
- ST_MakePoint(1, 4),
- ST_MakePoint(0, 2)
- ]), 0)
- )
-);
-
--- polygon
-INSERT INTO raster_touches_geom VALUES (
- 31, (
- SELECT ST_MakePolygon(geom) FROM raster_touches_geom WHERE gid = 24
- )
-), (
- 32, (
- SELECT ST_MakePolygon(geom) FROM raster_touches_geom WHERE gid = 25
- )
-), (
- 33, (
- SELECT ST_MakePolygon(geom) FROM raster_touches_geom WHERE gid = 26
- )
-), (
- 34, (
- SELECT ST_MakePolygon(geom) FROM raster_touches_geom WHERE gid = 27
- )
-), (
- 35, (
- SELECT ST_MakePolygon(geom) FROM raster_touches_geom WHERE gid = 28
- )
-), (
- 36, (
- SELECT ST_MakePolygon(geom) FROM raster_touches_geom WHERE gid = 29
- )
-);
-
--- multipolygon
-INSERT INTO raster_touches_geom VALUES (
- 41, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_touches_geom WHERE gid BETWEEN 31 and 40
- )
-), (
- 42, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_touches_geom WHERE gid BETWEEN 32 and 40
- )
-), (
- 43, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_touches_geom WHERE gid BETWEEN 33 and 40
- )
-), (
- 44, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_touches_geom WHERE gid BETWEEN 34 and 40
- )
-), (
- 45, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_touches_geom WHERE gid BETWEEN 35 and 40
- )
-), (
- 46, (
- SELECT ST_Multi(ST_Union(geom)) FROM raster_touches_geom WHERE gid BETWEEN 36 and 40
- )
-);
-
-SELECT
- '2.1',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Touches(r1.rast, g1.geom)
-FROM raster_touches_rast r1
-CROSS JOIN raster_touches_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.2',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Touches(g1.geom, r1.rast)
-FROM raster_touches_rast r1
-CROSS JOIN raster_touches_geom g1
-WHERE r1.rid = 0;
-
-SELECT
- '2.3',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Touches(r1.rast, g1.geom)
-FROM raster_touches_rast r1
-CROSS JOIN raster_touches_geom g1
-WHERE r1.rid = 2;
-
-SELECT
- '2.4',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Touches(g1.geom, r1.rast)
-FROM raster_touches_rast r1
-CROSS JOIN raster_touches_geom g1
-WHERE r1.rid = 2;
-
-SELECT
- '2.5',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Touches(r1.rast, g1.geom, 1)
-FROM raster_touches_rast r1
-CROSS JOIN raster_touches_geom g1
-WHERE r1.rid = 0;
-
-/*
-disabled testing of rid = 2 on gid = 33 due to issues on 32-bit vs 64-bit.
-32-bit returns false when the correct answer is true (64-bit returns correctly).
-*/
-SELECT
- '2.6',
- r1.rid,
- g1.gid,
- ST_GeometryType(g1.geom),
- ST_Touches(r1.rast, g1.geom, 1)
-FROM raster_touches_rast r1
-CROSS JOIN raster_touches_geom g1
-WHERE r1.rid = 2
- AND g1.gid != 33;
-
DROP TABLE IF EXISTS raster_touches_rast;
-DROP TABLE IF EXISTS raster_touches_geom;
1.2|0|30|f
1.2|0|31|f
1.2|0|32|f
-2.1|0|1|ST_Point|f
-2.1|0|2|ST_Point|f
-2.1|0|3|ST_Point|f
-2.1|0|4|ST_Point|t
-2.1|0|5|ST_Point|f
-2.1|0|6|ST_Point|f
-2.1|0|7|ST_Point|f
-2.1|0|8|ST_Point|f
-2.1|0|11|ST_MultiPoint|f
-2.1|0|12|ST_MultiPoint|f
-2.1|0|13|ST_MultiPoint|t
-2.1|0|14|ST_MultiPoint|f
-2.1|0|15|ST_MultiPoint|f
-2.1|0|21|ST_LineString|t
-2.1|0|22|ST_LineString|f
-2.1|0|23|ST_LineString|t
-2.1|0|24|ST_LineString|f
-2.1|0|25|ST_LineString|f
-2.1|0|26|ST_LineString|f
-2.1|0|27|ST_LineString|f
-2.1|0|28|ST_LineString|t
-2.1|0|29|ST_LineString|f
-2.1|0|31|ST_Polygon|f
-2.1|0|32|ST_Polygon|f
-2.1|0|33|ST_Polygon|f
-2.1|0|34|ST_Polygon|f
-2.1|0|35|ST_Polygon|t
-2.1|0|36|ST_Polygon|f
-2.1|0|41|ST_MultiPolygon|f
-2.1|0|42|ST_MultiPolygon|f
-2.1|0|43|ST_MultiPolygon|f
-2.1|0|44|ST_MultiPolygon|f
-2.1|0|45|ST_MultiPolygon|t
-2.1|0|46|ST_MultiPolygon|f
-2.2|0|1|ST_Point|f
-2.2|0|2|ST_Point|f
-2.2|0|3|ST_Point|f
-2.2|0|4|ST_Point|t
-2.2|0|5|ST_Point|f
-2.2|0|6|ST_Point|f
-2.2|0|7|ST_Point|f
-2.2|0|8|ST_Point|f
-2.2|0|11|ST_MultiPoint|f
-2.2|0|12|ST_MultiPoint|f
-2.2|0|13|ST_MultiPoint|t
-2.2|0|14|ST_MultiPoint|f
-2.2|0|15|ST_MultiPoint|f
-2.2|0|21|ST_LineString|t
-2.2|0|22|ST_LineString|f
-2.2|0|23|ST_LineString|t
-2.2|0|24|ST_LineString|f
-2.2|0|25|ST_LineString|f
-2.2|0|26|ST_LineString|f
-2.2|0|27|ST_LineString|f
-2.2|0|28|ST_LineString|t
-2.2|0|29|ST_LineString|f
-2.2|0|31|ST_Polygon|f
-2.2|0|32|ST_Polygon|f
-2.2|0|33|ST_Polygon|f
-2.2|0|34|ST_Polygon|f
-2.2|0|35|ST_Polygon|t
-2.2|0|36|ST_Polygon|f
-2.2|0|41|ST_MultiPolygon|f
-2.2|0|42|ST_MultiPolygon|f
-2.2|0|43|ST_MultiPolygon|f
-2.2|0|44|ST_MultiPolygon|f
-2.2|0|45|ST_MultiPolygon|t
-2.2|0|46|ST_MultiPolygon|f
-2.3|2|1|ST_Point|t
-2.3|2|2|ST_Point|f
-2.3|2|3|ST_Point|f
-2.3|2|4|ST_Point|f
-2.3|2|5|ST_Point|f
-2.3|2|6|ST_Point|f
-2.3|2|7|ST_Point|f
-2.3|2|8|ST_Point|t
-2.3|2|11|ST_MultiPoint|f
-2.3|2|12|ST_MultiPoint|t
-2.3|2|13|ST_MultiPoint|t
-2.3|2|14|ST_MultiPoint|t
-2.3|2|15|ST_MultiPoint|t
-2.3|2|21|ST_LineString|f
-2.3|2|22|ST_LineString|f
-2.3|2|23|ST_LineString|f
-2.3|2|24|ST_LineString|f
-2.3|2|25|ST_LineString|f
-2.3|2|26|ST_LineString|t
-2.3|2|27|ST_LineString|f
-2.3|2|28|ST_LineString|f
-2.3|2|29|ST_LineString|f
-2.3|2|31|ST_Polygon|f
-2.3|2|32|ST_Polygon|f
-2.3|2|33|ST_Polygon|t
-2.3|2|34|ST_Polygon|f
-2.3|2|35|ST_Polygon|f
-2.3|2|36|ST_Polygon|f
-2.3|2|41|ST_MultiPolygon|f
-2.3|2|42|ST_MultiPolygon|f
-2.3|2|43|ST_MultiPolygon|f
-2.3|2|44|ST_MultiPolygon|f
-2.3|2|45|ST_MultiPolygon|f
-2.3|2|46|ST_MultiPolygon|f
-2.4|2|1|ST_Point|t
-2.4|2|2|ST_Point|f
-2.4|2|3|ST_Point|f
-2.4|2|4|ST_Point|f
-2.4|2|5|ST_Point|f
-2.4|2|6|ST_Point|f
-2.4|2|7|ST_Point|f
-2.4|2|8|ST_Point|t
-2.4|2|11|ST_MultiPoint|f
-2.4|2|12|ST_MultiPoint|t
-2.4|2|13|ST_MultiPoint|t
-2.4|2|14|ST_MultiPoint|t
-2.4|2|15|ST_MultiPoint|t
-2.4|2|21|ST_LineString|f
-2.4|2|22|ST_LineString|f
-2.4|2|23|ST_LineString|f
-2.4|2|24|ST_LineString|f
-2.4|2|25|ST_LineString|f
-2.4|2|26|ST_LineString|t
-2.4|2|27|ST_LineString|f
-2.4|2|28|ST_LineString|f
-2.4|2|29|ST_LineString|f
-2.4|2|31|ST_Polygon|f
-2.4|2|32|ST_Polygon|f
-2.4|2|33|ST_Polygon|t
-2.4|2|34|ST_Polygon|f
-2.4|2|35|ST_Polygon|f
-2.4|2|36|ST_Polygon|f
-2.4|2|41|ST_MultiPolygon|f
-2.4|2|42|ST_MultiPolygon|f
-2.4|2|43|ST_MultiPolygon|f
-2.4|2|44|ST_MultiPolygon|f
-2.4|2|45|ST_MultiPolygon|f
-2.4|2|46|ST_MultiPolygon|f
-2.5|0|1|ST_Point|f
-2.5|0|2|ST_Point|f
-2.5|0|3|ST_Point|f
-2.5|0|4|ST_Point|f
-2.5|0|5|ST_Point|f
-2.5|0|6|ST_Point|f
-2.5|0|7|ST_Point|f
-2.5|0|8|ST_Point|f
-2.5|0|11|ST_MultiPoint|f
-2.5|0|12|ST_MultiPoint|f
-2.5|0|13|ST_MultiPoint|f
-2.5|0|14|ST_MultiPoint|f
-2.5|0|15|ST_MultiPoint|f
-2.5|0|21|ST_LineString|f
-2.5|0|22|ST_LineString|f
-2.5|0|23|ST_LineString|f
-2.5|0|24|ST_LineString|f
-2.5|0|25|ST_LineString|f
-2.5|0|26|ST_LineString|f
-2.5|0|27|ST_LineString|f
-2.5|0|28|ST_LineString|f
-2.5|0|29|ST_LineString|f
-2.5|0|31|ST_Polygon|f
-2.5|0|32|ST_Polygon|f
-2.5|0|33|ST_Polygon|f
-2.5|0|34|ST_Polygon|f
-2.5|0|35|ST_Polygon|f
-2.5|0|36|ST_Polygon|f
-2.5|0|41|ST_MultiPolygon|f
-2.5|0|42|ST_MultiPolygon|f
-2.5|0|43|ST_MultiPolygon|f
-2.5|0|44|ST_MultiPolygon|f
-2.5|0|45|ST_MultiPolygon|f
-2.5|0|46|ST_MultiPolygon|f
-2.6|2|1|ST_Point|f
-2.6|2|2|ST_Point|f
-2.6|2|3|ST_Point|f
-2.6|2|4|ST_Point|f
-2.6|2|5|ST_Point|f
-2.6|2|6|ST_Point|f
-2.6|2|7|ST_Point|f
-2.6|2|8|ST_Point|f
-2.6|2|11|ST_MultiPoint|f
-2.6|2|12|ST_MultiPoint|f
-2.6|2|13|ST_MultiPoint|f
-2.6|2|14|ST_MultiPoint|f
-2.6|2|15|ST_MultiPoint|f
-2.6|2|21|ST_LineString|f
-2.6|2|22|ST_LineString|f
-2.6|2|23|ST_LineString|f
-2.6|2|24|ST_LineString|f
-2.6|2|25|ST_LineString|f
-2.6|2|26|ST_LineString|f
-2.6|2|27|ST_LineString|f
-2.6|2|28|ST_LineString|f
-2.6|2|29|ST_LineString|f
-2.6|2|31|ST_Polygon|f
-2.6|2|32|ST_Polygon|f
-2.6|2|34|ST_Polygon|f
-2.6|2|35|ST_Polygon|f
-2.6|2|36|ST_Polygon|f
-2.6|2|41|ST_MultiPolygon|f
-2.6|2|42|ST_MultiPolygon|f
-2.6|2|43|ST_MultiPolygon|f
-2.6|2|44|ST_MultiPolygon|f
-2.6|2|45|ST_MultiPolygon|f
-2.6|2|46|ST_MultiPolygon|f