637 lines
35 KiB
Plaintext
637 lines
35 KiB
Plaintext
SELECT ST_ISSIMPLE(NULL);
|
|
ST_ISSIMPLE(NULL)
|
|
NULL
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT((0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT((0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0, 0 1)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0, 0 1)'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0, 0 1))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0, 0 1))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0, 0 1, 1 0, 0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0, 0 1, 1 0, 0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0, 0 1, 1 0, 0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0, 0 1, 1 0, 0 0)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0), POINT(0 1))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0), POINT(0 1))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)', 4326));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)', 4326))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT((0 0))', 4326));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT((0 0))', 4326))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0, 0 1)', 4326));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0, 0 1)', 4326))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0, 0 1))', 4326));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0, 0 1))', 4326))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0, 0 1, 1 0, 0 0))', 4326));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0, 0 1, 1 0, 0 0))', 4326))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0, 0 1, 1 0, 0 0)))', 4326));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0, 0 1, 1 0, 0 0)))', 4326))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0), POINT(0 1))', 4326));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0), POINT(0 1))', 4326))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)', 3857));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)', 3857))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT((0 0))', 3857));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT((0 0))', 3857))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0, 0 1)', 3857));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0, 0 1)', 3857))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0, 0 1))', 3857));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0, 0 1))', 3857))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0, 0 1, 1 0, 0 0))', 3857));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0, 0 1, 1 0, 0 0))', 3857))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0, 0 1, 1 0, 0 0)))', 3857));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0, 0 1, 1 0, 0 0)))', 3857))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0), POINT(0 1))', 3857));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0), POINT(0 1))', 3857))
|
|
1
|
|
# Creating the spatial Geometry object
|
|
USE test;
|
|
CREATE TABLE gis_geometrycollection (fid INTEGER NOT NULL PRIMARY KEY, g GEOMETRY);
|
|
SET @star_elem_vertical= 'POLYGON((5 0,15 25,25 0,15 5,5 0))';
|
|
SET @star_elem_horizontal= 'POLYGON((25 0,0 15,30 15,22 10,25 0))';
|
|
SET @star_center= 'POINT(15 10)';
|
|
SET @star_top= 'POINT(15 25)';
|
|
SET @star_bottom_left= 'POINT(5 0)';
|
|
SET @star_bottom_right= 'POINT(25 0)';
|
|
SET @star_bottom_points= 'MULTIPOINT(5 0,25 0)';
|
|
SET @star_all_points= 'MULTIPOINT(5 0,25 0,15 10,15 25)';
|
|
SET @star_line_horizontal= 'LINESTRING(10 15,20 15)';
|
|
SET @star_line_vertical= 'LINESTRING(15 5,15 25)';
|
|
SET @star_top_to_center= 'LINESTRING(15 25,15 10)';
|
|
SET @star_lines_near_horizontal= 'MULTILINESTRING((25 0,0 15,15 30,0 5))';
|
|
SET @star_lines_near_vertical= 'MULTILINESTRING((0 5,15 25,0 25))';
|
|
SET @star= 'POLYGON((5 0,7 10,0 15,10 15,15 25,20 15,30 15,22 10,25 0,15 5,5 0))';
|
|
SET @star_of_elems='MULTIPOLYGON(((5 0,15 25,25 0,15 5,5 0)),((25 0,0 15,30 15,22 10,25 0)))';
|
|
SET @star_collection_elems='GEOMETRYCOLLECTION(MULTIPOLYGON(((5 0,15 25,25 0,15 5,5 0)),((25 0,0 15,30 15,22 10,25 0))),POLYGON((5 0,7 10,0 15,10 15,15 25,20 15,30 15,22 10,25 0,15 5,5 0)),LINESTRING(15 25,15 10),MULTIPOINT(5 0,25 0),POINT(15 25))';
|
|
SET @star_collection_multilinestr='GEOMETRYCOLLECTION(MULTIPOLYGON(((5 0,15 25,25 0,15 5,5 0)),((25 0,0 15,30 15,22 10,25 0))),POLYGON((5 0,7 10,0 15,10 15,15 25,20 15,30 15,22 10,25 0,15 5,5 0)),MULTILINESTRING((25 0,0 15,15 30,0 5)),LINESTRING(15 25,15 10),MULTIPOINT(5 0,25 0),POINT(15 25))';
|
|
# INSERT base star
|
|
INSERT INTO gis_geometrycollection VALUES
|
|
(100,ST_GEOMFROMTEXT(@star)),
|
|
(101,ST_GEOMFROMTEXT(@star_elem_vertical)),
|
|
(102,ST_GEOMFROMTEXT(@star_elem_horizontal)),
|
|
(103,ST_GEOMFROMTEXT(@star_of_elems)),
|
|
(104,ST_GEOMFROMTEXT(@star_top)),
|
|
(105,ST_GEOMFROMTEXT(@star_center)),
|
|
(106,ST_GEOMFROMTEXT(@star_bottom_left)),
|
|
(107,ST_GEOMFROMTEXT(@star_bottom_right)),
|
|
(108,ST_GEOMFROMTEXT(@star_bottom_points)),
|
|
(109,ST_GEOMFROMTEXT(@star_all_points)),
|
|
(110,ST_GEOMFROMTEXT(@star_line_horizontal)),
|
|
(111,ST_GEOMFROMTEXT(@star_line_vertical)),
|
|
(112,ST_GEOMFROMTEXT(@star_top_to_center)),
|
|
(113,ST_GEOMFROMTEXT(@star_lines_near_horizontal)),
|
|
(114,ST_GEOMFROMTEXT(@star_lines_near_vertical)),
|
|
(115,ST_GEOMFROMTEXT(@star_collection_elems)),
|
|
(116,ST_GEOMFROMTEXT(@star_collection_multilinestr));
|
|
# Checking the integrity of the above create/insert statements
|
|
# 17 rows.
|
|
SELECT count(ST_ASTEXT(g) != 'NULL') FROM gis_geometrycollection;
|
|
count(ST_ASTEXT(g) != 'NULL')
|
|
17
|
|
#####################################################################################
|
|
# ST_ISSIMPLE(geometry)
|
|
#####################################################################################
|
|
#====================================================================================
|
|
# point
|
|
#====================================================================================
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_center));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_center))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_top));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_top))
|
|
1
|
|
SELECT ST_ISSIMPLE(g) FROM gis_geometrycollection WHERE fid=105;
|
|
ST_ISSIMPLE(g)
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(2.34 -2.34)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(2.34 -2.34)'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(1e100 -1e100)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(1e100 -1e100)'))
|
|
1
|
|
#====================================================================================
|
|
# multipoint
|
|
#====================================================================================
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_all_points));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_all_points))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_bottom_points));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_bottom_points))
|
|
1
|
|
SELECT ST_ISSIMPLE(g) FROM gis_geometrycollection WHERE fid=108;
|
|
ST_ISSIMPLE(g)
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(0 0,1 1,-0 +0)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(0 0,1 1,-0 +0)'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(0 0,0.0 -0,-0.0 0.000)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(0 0,0.0 -0,-0.0 0.000)'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(0 0,0 5,5 5,5 0)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(0 0,0 5,5 5,5 0)'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(0 0,0 5,5 5,5 0,0 0)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(0 0,0 5,5 5,5 0,0 0)'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(1 -1,1e100 -1e100,0.0001 0.000)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(1 -1,1e100 -1e100,0.0001 0.000)'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(1 -1,1e100 1e100,1 1,1e100 1e100)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT(1 -1,1e100 1e100,1 1,1e100 1e100)'))
|
|
0
|
|
#====================================================================================
|
|
# linestring
|
|
#====================================================================================
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_top_to_center));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_top_to_center))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_line_horizontal));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_line_horizontal))
|
|
1
|
|
SELECT ST_ISSIMPLE(g) FROM gis_geometrycollection WHERE fid=110;
|
|
ST_ISSIMPLE(g)
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0)'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,-0.00 0)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,-0.00 0)'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,1 1,1 1)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,1 1,1 1)'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,1 1,0 0)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,1 1,0 0)'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,0 5,5 5,5 0,0 0)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,0 5,5 5,5 0,0 0)'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,10 10,10 0,0 10)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,10 10,10 0,0 10)'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,10 10,10 0,0 10,0 0)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,10 10,10 0,0 10,0 0)'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,1e100 1e100,0.0001 0.000)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,1e100 1e100,0.0001 0.000)'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,1e100 1e100,-1e100 -1e100,0 0)'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,1e100 1e100,-1e100 -1e100,0 0)'))
|
|
0
|
|
#====================================================================================
|
|
# multilinestring
|
|
#====================================================================================
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_lines_near_vertical));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_lines_near_vertical))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_lines_near_horizontal));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_lines_near_horizontal))
|
|
0
|
|
SELECT ST_ISSIMPLE(g) FROM gis_geometrycollection WHERE fid=114;
|
|
ST_ISSIMPLE(g)
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,1 1,1 1))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,1 1,1 1))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,0 0),(1 1,3 3))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,0 0),(1 1,3 3))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,-0.00 0),(0.0 0,0 +0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,-0.00 0),(0.0 0,0 +0))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,0 5,5 5,5 0,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,0 5,5 5,5 0,0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,10 10,10 0,0 10))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,10 10,10 0,0 10))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,10 10),(10 0,0 10))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,10 10),(10 0,0 10))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,10 10,0 0),(10 10,20 20))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 0,10 10,0 0),(10 10,20 20))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 10,10 0),(10 0,0 0),(0 0,10 10))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((0 10,10 0),(10 0,0 0),(0 0,10 10))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((1 -1,1e100 -1e100,0.0001 0.000),(2 2,4 -9.002))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING((1 -1,1e100 -1e100,0.0001 0.000),(2 2,4 -9.002))'))
|
|
0
|
|
#====================================================================================
|
|
# polygon
|
|
#====================================================================================
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_elem_vertical));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_elem_vertical))
|
|
1
|
|
SELECT ST_ISSIMPLE(g) FROM gis_geometrycollection WHERE fid=100;
|
|
ST_ISSIMPLE(g)
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 5,5 5,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 5,5 5,0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 0,0 5,5 5,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 0,0 5,5 5,0 0))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 5,5 5,5 5,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 5,5 5,5 5,0 0))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,5 10,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,5 10,0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,10 10,-10 10,0 0,10 -10,-10 -10,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,10 10,-10 10,0 0,10 -10,-10 -10,0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0,-10 0,-10 -10,0 -10,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0,-10 0,-10 -10,0 -10,0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0),(0 0,0 10,10 10,10 0,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0),(0 0,0 10,10 10,10 0,0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((4 4,4 6,6 6,6 4,4 4),(0 0,0 10,10 10,10 0,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((4 4,4 6,6 6,6 4,4 4),(0 0,0 10,10 10,10 0,0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((4 4,4 6,6 6,6 4,4 4),(8 8,8 10,10 10,10 8,8 8))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((4 4,4 6,6 6,6 4,4 4),(8 8,8 10,10 10,10 8,8 8))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4),(4 4,4 6,6 6,6 4,4 4))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4),(4 4,4 6,6 6,6 4,4 4))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4),(6 6,6 8,8 8,8 6,6 6))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,6 4,6 6,4 6,4 4),(6 6,6 8,8 8,8 6,6 6))'))
|
|
1
|
|
#====================================================================================
|
|
# multipolygon
|
|
#====================================================================================
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_of_elems));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_of_elems))
|
|
1
|
|
SELECT ST_ISSIMPLE(g) FROM gis_geometrycollection WHERE fid=103;
|
|
ST_ISSIMPLE(g)
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,5 5,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,5 5,0 0)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 0,0 5,5 5,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 0,0 5,5 5,0 0)))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,0 5,5 5,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,0 5,5 5,0 0)))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,5 10,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,5 10,0 0)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((3 3,3 6,6 6,6 3,3 3)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((3 3,3 6,6 6,6 3,3 3)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 10,10 0,0 0,0 10)),((0 0,10 10,10 0,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 10,10 0,0 0,0 10)),((0 0,10 10,10 0,0 0)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0,-10 0,-10 -10,0 -10,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0,-10 0,-10 -10,0 -10,0 0)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,0 0)),((10 10,10 15,15 15,10 10)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,0 0)),((10 10,10 15,15 15,10 10)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((4 4,4 6,6 6,6 4,4 4)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((4 4,4 6,6 6,6 4,4 4)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(0 0,0 10,10 10,10 0,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(0 0,0 10,10 10,10 0,0 0)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((4 4,4 6,6 6,6 4,4 4),(0 0,0 10,10 10,10 0,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((4 4,4 6,6 6,6 4,4 4),(0 0,0 10,10 10,10 0,0 0)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((4 4,4 6,6 6,6 4,4 4),(8 8,8 10,10 10,10 8,8 8)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((4 4,4 6,6 6,6 4,4 4),(8 8,8 10,10 10,10 8,8 8)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((10 10,10 0,5 10,10 10)),((0 10,0 20,5 10,0 10)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((10 10,10 0,5 10,10 10)),((0 10,0 20,5 10,0 10)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)),((4 4,4 6,6 6,6 4,4 4)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)),((4 4,4 6,6 6,6 4,4 4)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(0 0,0 10,10 10,10 0,0 0)),((0 0,0 10,10 10,10 0,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(0 0,0 10,10 10,10 0,0 0)),((0 0,0 10,10 10,10 0,0 0)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(0 0,0 10,10 10,10 0,0 0)),((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,4 4)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0),(0 0,0 10,10 10,10 0,0 0)),((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,4 4)))'))
|
|
1
|
|
#====================================================================================
|
|
# geometrycollection
|
|
#====================================================================================
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_collection_elems));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_collection_elems))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_collection_multilinestr));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_collection_multilinestr))
|
|
0
|
|
SELECT ST_ISSIMPLE(g) FROM gis_geometrycollection WHERE fid=115;
|
|
ST_ISSIMPLE(g)
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION()'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION()'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(LINESTRING(0 0))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(GEOMETRYCOLLECTION()))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(GEOMETRYCOLLECTION()))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(),MULTIPOINT(0 0,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(),MULTIPOINT(0 0,0 0))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(),LINESTRING(0 0,10 10,10 0,0 0))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(),LINESTRING(0 0,10 10,10 0,0 0))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(),LINESTRING(0 0,10 10,10 0,0 10))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(),LINESTRING(0 0,10 10,10 0,0 10))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(),MULTILINESTRING((0 0,10 10),(10 10,20 20)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(),MULTILINESTRING((0 0,10 10),(10 10,20 20)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(),MULTILINESTRING((0 0,10 10),(0 0,10 10,20 20)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(),MULTILINESTRING((0 0,10 10),(0 0,10 10,20 20)))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(10 10),POINT(10 10))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(10 10),POINT(10 10))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(10 10),MULTIPOINT(0 0,10 10))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(10 10),MULTIPOINT(0 0,10 10))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(10 10),POINT(10 10)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(10 10),POINT(10 10)))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(LINESTRING(0 0,10 10),POINT(5 5))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(LINESTRING(0 0,10 10),POINT(5 5))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(LINESTRING(5 0,5 10),POLYGON((0 0,0 10,10 10,10 0,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(LINESTRING(5 0,5 10),POLYGON((0 0,0 10,10 10,10 0,0 0)))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(LINESTRING(0 0,0 10,10 10,10 0),POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(LINESTRING(0 0,0 10,10 10,10 0),POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(LINESTRING(1 1,2 2,3 3),'
|
|
'MULTILINESTRING((0 0,0 10,10 10,10 0),(10 10,10 15,15 15,10 10)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(LINESTRING(1 1,2 2,3 3),'
|
|
'MULTILINESTRING((0 0,0 10,10 10,10 0),(10 10,10 15,15 15,10 10)))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(10 10),'
|
|
'MULTIPOINT(0 0,10 10),'
|
|
'LINESTRING(1 1,2 2,3 3),'
|
|
'MULTILINESTRING((0 0,0 10,10 10,10 0),(10 10,10 15,15 15,10 10)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(10 10),'
|
|
'MULTIPOINT(0 0,10 10),'
|
|
'LINESTRING(1 1,2 2,3 3),'
|
|
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POLYGON((0 0,0 10,10 10,10 0,0 0)))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POLYGON((0 0,0 10,10 10,10 0,0 0)))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION('
|
|
'GEOMETRYCOLLECTION(POLYGON((0 0,0 10,10 10,10 0,0 0)))))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION('
|
|
'GEOMETRYCOLLECTION(POLYGON((0 0,0 10,10 10,10 0,0 0)))))'))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)),'
|
|
'MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((10 10,10 15,15 15,15 10,10 10))))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)),'
|
|
'MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((10 10,10 15,15 15,15 10,10 10))))'))
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(10 10),'
|
|
'MULTIPOINT(0 0,10 10)),'
|
|
'GEOMETRYCOLLECTION(LINESTRING(1 1,2 2,3 3),'
|
|
'MULTILINESTRING((0 0,0 10,10 10),(10 10,10 15,15 15))))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(10 10),'
|
|
'MULTIPOINT(0 0,10 10)),'
|
|
'GEOMETRYCOLLECTION(
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(10 10),'
|
|
'MULTIPOINT(0 0,10 10)),'
|
|
'GEOMETRYCOLLECTION(LINESTRING(1 1,2 2,3 3),'
|
|
'MULTILINESTRING((0 0,0 10,10 10),(10 10,10 15,15 15))),'
|
|
'GEOMETRYCOLLECTION(POLYGON((0 0,0 10,10 10,10 0,0 0),(4 4,4 6,6 6,6 4,4 4)),'
|
|
'MULTIPOLYGON(((0 0,0 10,10 10,10 0,0 0)),((10 10,10 15,15 15,15 10,10 10)))))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(10 10),'
|
|
'MULTIPOINT(0 0,10 10)),'
|
|
'GEOMETRYCOLLECTION(
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(10 10),'
|
|
'MULTIPOINT(0 0,10 10)),'
|
|
'GEOMETRYCOLLECTION(LINESTRING(1 1,2 2,3 3),'
|
|
'MULTILINESTRING((0 0,0 10,10 10),(10 10,10 15,15 15))),'
|
|
'GEOMETRYCOLLECTION(GEOMETRYCOLLECTION()))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(GEOMETRYCOLLECTION(POINT(10 10),'
|
|
'MULTIPOINT(0 0,10 10)),'
|
|
'GEOMETRYCOLLECTION(
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,0 1,1 1,1 0,0 0),'
|
|
'POLYGON((0 0,0 10,10 10,10 0,0 0)),'
|
|
'MULTIPOINT(0 0,1 1,2 2,3 3),'
|
|
'MULTILINESTRING((0 0,0 10),(10 10,10 0)),'
|
|
'MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((10 10,10 15,15 15,15 10,10 10))))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,0 1,1 1,1 0,0 0),'
|
|
'POLYGON((0 0,0 10,10 10,10 0,0 0)),'
|
|
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,1 1,1 0,0 1),'
|
|
'POLYGON((0 0,0 10,10 10,10 0,0 0)),'
|
|
'MULTIPOINT(0 0,1 1,2 2,3 3),'
|
|
'MULTILINESTRING((0 0,0 10),(10 10,10 0)),'
|
|
'MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((10 10,10 15,15 15,15 10,10 10))))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,1 1,1 0,0 1),'
|
|
'POLYGON((0 0,0 10,10 10,10 0,0 0)),'
|
|
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,0 1,1 1,1 0,0 0),'
|
|
'POLYGON((0 0,0 10,10 10,10 0,0 0)),'
|
|
'MULTIPOINT(0 0,1 1,2 2,3 3,0 0),'
|
|
'MULTILINESTRING((0 0,0 10),(10 10,10 0)),'
|
|
'MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((10 10,10 15,15 15,15 10,10 10))))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,0 1,1 1,1 0,0 0),'
|
|
'POLYGON((0 0,0 10,10 10,10 0,0 0)),'
|
|
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,0 1,1 1,1 0,0 0),'
|
|
'POLYGON((0 0,0 10,10 10,10 0,0 0)),'
|
|
'MULTIPOINT(0 0,1 1,2 2,3 3),'
|
|
'MULTILINESTRING((0 0,10 10),(0 10,10 0)),'
|
|
'MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((10 10,10 15,15 15,15 10,10 10))))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,0 1,1 1,1 0,0 0),'
|
|
'POLYGON((0 0,0 10,10 10,10 0,0 0)),'
|
|
|
|
0
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,0 1,1 1,1 0,0 0),'
|
|
'POLYGON((0 0,0 10,10 10,10 0,0 0,0 0)),'
|
|
'MULTIPOINT(0 0,1 1,2 2,3 3),'
|
|
'MULTILINESTRING((0 0,10 0),(0 10,10 10)),'
|
|
'MULTIPOLYGON(((0 0,0 5,5 5,5 0,0 0)),((10 10,10 15,15 15,15 10,10 10))))'));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('GEOMETRYCOLLECTION(POINT(0 0),'
|
|
'LINESTRING(0 0,0 1,1 1,1 0,0 0),'
|
|
'POLYGON((0 0,0 10,10 10,10 0,0 0,0 0)),'
|
|
|
|
0
|
|
#####################################################################################
|
|
# ST_ISSIMPLE(geometry) with different SRID values
|
|
#####################################################################################
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_center,-1024));
|
|
ERROR 22003: SRID value is out of range in 'st_geomfromtext'
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_all_points,-1));
|
|
ERROR 22003: SRID value is out of range in 'st_geomfromtext'
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_top_to_center,0));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_top_to_center,0))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_lines_near_vertical,4326));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_lines_near_vertical,4326))
|
|
1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_of_elems,4294967296));
|
|
ERROR 22003: SRID value is out of range in 'st_geomfromtext'
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT(@star_collection_elems,4294967295000));
|
|
ERROR 22003: SRID value is out of range in 'st_geomfromtext'
|
|
#####################################################################################
|
|
# Invalid function calls
|
|
#####################################################################################
|
|
SELECT ST_ISSIMPLE();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'ST_ISSIMPLE'
|
|
SELECT ST_ISSIMPLE(NULL);
|
|
ST_ISSIMPLE(NULL)
|
|
NULL
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT()'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING()'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON(())'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOINT()'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTILINESTRING(())'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON((()))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(a 0)'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(! 0)'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT('!' 0)'));
|
|
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '!' 0)'))' at line 1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(12,34 0)'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(a 0,10 10)'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(0 0,! 10)'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING('!' 0,10 10)'));
|
|
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '!' 0,10 10)'))' at line 1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('LINESTRING(12,34 0,10 10)'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((a 0,10 10,10 0,0 0))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,2 2,4 4))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,2 2,0 0))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((0 0,! 10,10 0,0 0))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON(('!' 0,10 10,10 0,0 0))'));
|
|
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '!' 0,10 10,10 0,0 0))'))' at line 1
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POLYGON((12,34 0,10 10,10 0,0 0))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,5 5)),((0 0)))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('MULTIPOLYGON(((0 0,0 5,5 5)),((0 0,2 2,3 3)))'));
|
|
ERROR 22023: Invalid GIS data provided to function st_geomfromtext.
|
|
SELECT ST_ISSIMPLE(0x000000000200000000000000000000000000000000);
|
|
ERROR 22023: Invalid GIS data provided to function st_issimple.
|
|
SELECT ST_ISSIMPLE(0x000000000600000001000000000200000002000000);
|
|
ERROR 22023: Invalid GIS data provided to function st_issimple.
|
|
SELECT ST_ISSIMPLE(0x000000000200000001000000050000000000000000);
|
|
ERROR 22023: Invalid GIS data provided to function st_issimple.
|
|
# Clean up
|
|
DROP TABLE gis_geometrycollection;
|
|
#
|
|
# Bug #21841051 PREPARE STATEMENT RETURNS DIFFERENT NUMBER OF ROWS WHEN
|
|
# EXECUTED SECOND TIME
|
|
#
|
|
CREATE TABLE t1 (id INT, g GEOMETRY);
|
|
INSERT INTO t1 VALUES (2, ST_GeomFromText('POINT(0 0)'));
|
|
CREATE TABLE t2 (id INT);
|
|
INSERT INTO t2 VALUES (1), (3);
|
|
PREPARE stmt FROM 'SELECT ST_IsSimple(g) AS a1
|
|
FROM t1 RIGHT OUTER JOIN t2 ON (t1.id > t2.id) GROUP BY a1';
|
|
EXECUTE stmt;
|
|
a1
|
|
1
|
|
NULL
|
|
EXECUTE stmt;
|
|
a1
|
|
1
|
|
NULL
|
|
DEALLOCATE PREPARE stmt;
|
|
DROP TABLE t1, t2;
|
|
#
|
|
# WL#8579 Spatial Reference Systems
|
|
#
|
|
# SRID 0 (should pass)
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)', 0));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)', 0))
|
|
1
|
|
# Projected SRS (should pass)
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)', 2000));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)', 2000))
|
|
1
|
|
# Geographic SRS (should pass)
|
|
SELECT ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)', 4326));
|
|
ST_ISSIMPLE(ST_GEOMFROMTEXT('POINT(0 0)', 4326))
|
|
1
|
|
#
|
|
# WL#11096 Don't do Cartesian computations on geographic geometries
|
|
#
|
|
# Assume SRID 10 is not defined.
|
|
DO ST_ISSIMPLE(x'0A000000010100000000000000000000000000000000000000');
|
|
ERROR SR001: There's no spatial reference system with SRID 10.
|