206 lines
4.6 KiB
SQL
206 lines
4.6 KiB
SQL
SELECT path, ST_AsText(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM
|
|
(SELECT
|
|
'POINT (0 9)'::geometry AS geom
|
|
) AS g
|
|
) j;
|
|
|
|
SELECT path, ST_AsText(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM
|
|
(SELECT
|
|
'LINESTRING (
|
|
0 0,
|
|
0 9,
|
|
9 9,
|
|
9 0,
|
|
0 0
|
|
)'::geometry AS geom
|
|
) AS g
|
|
) j;
|
|
|
|
SELECT path, ST_AsText(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM
|
|
(SELECT
|
|
'POLYGON ((
|
|
0 0,
|
|
0 9,
|
|
9 9,
|
|
9 0,
|
|
0 0
|
|
))'::geometry AS geom
|
|
) AS g
|
|
) j;
|
|
|
|
SELECT path, ST_AsText(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM
|
|
(SELECT
|
|
'TRIANGLE ((
|
|
0 0,
|
|
0 9,
|
|
9 0,
|
|
0 0
|
|
))'::geometry AS geom
|
|
) AS g
|
|
) j;
|
|
|
|
SELECT path, ST_AsText(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM
|
|
(SELECT
|
|
'POLYGON ((
|
|
0 0,
|
|
0 9,
|
|
9 9,
|
|
9 0,
|
|
0 0
|
|
), (
|
|
1 1,
|
|
1 3,
|
|
3 2,
|
|
1 1
|
|
), (
|
|
7 6,
|
|
6 8,
|
|
8 8,
|
|
7 6
|
|
))'::geometry AS geom
|
|
) AS g
|
|
) j;
|
|
|
|
SELECT path, ST_AsText(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM
|
|
(SELECT
|
|
'MULTIPOLYGON (((
|
|
0 0,
|
|
0 3,
|
|
4 3,
|
|
4 0,
|
|
0 0
|
|
)), ((
|
|
2 4,
|
|
1 6,
|
|
4 5,
|
|
2 4
|
|
), (
|
|
7 6,
|
|
6 8,
|
|
8 8,
|
|
7 6
|
|
)))'::geometry AS geom
|
|
) AS g
|
|
) j;
|
|
|
|
SELECT path, ST_AsEWKT(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM
|
|
(SELECT
|
|
'POLYHEDRALSURFACE (((
|
|
0 0 0,
|
|
0 0 1,
|
|
0 1 1,
|
|
0 1 0,
|
|
0 0 0
|
|
)), ((
|
|
0 0 0,
|
|
0 1 0,
|
|
1 1 0,
|
|
1 0 0,
|
|
0 0 0
|
|
))
|
|
)'::geometry AS geom
|
|
) AS g
|
|
) j;
|
|
|
|
SELECT path, ST_AsEWKT(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM
|
|
(SELECT
|
|
'TIN (((
|
|
0 0 0,
|
|
0 0 1,
|
|
0 1 0,
|
|
0 0 0
|
|
)), ((
|
|
0 0 0,
|
|
0 1 0,
|
|
1 1 0,
|
|
0 0 0
|
|
))
|
|
)'::geometry AS geom
|
|
) AS g
|
|
) j;
|
|
|
|
SELECT path, ST_AsText(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM
|
|
(SELECT
|
|
'GEOMETRYCOLLECTION(
|
|
POINT(99 98),
|
|
LINESTRING(1 1, 3 3),
|
|
POLYGON((0 0, 0 1, 1 1, 0 0)),
|
|
POLYGON((0 0, 0 9, 9 9, 9 0, 0 0), (5 5, 5 6, 6 6, 5 5)),
|
|
MULTIPOLYGON(((0 0, 0 9, 9 9, 9 0, 0 0), (5 5, 5 6, 6 6, 5 5)))
|
|
)'::geometry AS geom
|
|
) AS g
|
|
) j;
|
|
|
|
SELECT path, ST_AsText(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM
|
|
(SELECT 'SRID=4326;CURVEPOLYGON(
|
|
CIRCULARSTRING(-71.0821 42.3036, -71.4821 42.3036,
|
|
-71.7821 42.7036, -71.0821 42.7036, -71.0821 42.3036),
|
|
(-71.1821 42.4036, -71.3821 42.6036, -71.3821 42.4036, -71.1821 42.4036)
|
|
)'::geometry as geom
|
|
) as g
|
|
) j;
|
|
|
|
SELECT path, ST_AsText(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM (
|
|
SELECT 'CURVEPOLYGON(CIRCULARSTRING(0 0, 4 0, 4 4, 0 4, 0 0),(1 1, 3 3, 3 1, 1 1))'::geometry as geom
|
|
) as g
|
|
) j;
|
|
|
|
SELECT '#2704', ST_DumpPoints('POLYGON EMPTY'::geometry);
|
|
SELECT '#2704', ST_DumpPoints('MULTIPOLYGON EMPTY'::geometry);
|
|
SELECT '#2704', ST_DumpPoints('MULTILINESTRING EMPTY'::geometry);
|
|
SELECT '#2704', ST_DumpPoints('LINESTRING EMPTY'::geometry);
|
|
SELECT '#2704', ST_DumpPoints('GEOMETRYCOLLECTION EMPTY'::geometry);
|
|
|
|
SELECT path, ST_AsText(geom)
|
|
FROM (
|
|
SELECT (ST_DumpPoints(g.geom)).*
|
|
FROM (SELECT 'GEOMETRYCOLLECTION(
|
|
POINT(11 11),
|
|
GEOMETRYCOLLECTION EMPTY,
|
|
POINT(22 22),
|
|
GEOMETRYCOLLECTION EMPTY,
|
|
POINT(33 33),
|
|
POINT(44 44)
|
|
)'::geometry AS geom
|
|
) AS g
|
|
) j;
|
|
|
|
SELECT '#5240', dp.path, ST_AsText(dp.geom)
|
|
FROM ( SELECT ST_GeomFromText('MULTIPOLYGON (((9 9, 9 1, 1 1, 2 4, 7 7, 9 9)), EMPTY)', 4326) As the_geom ) As foo1, ST_DumpPoints(foo1.the_geom) AS dp;
|
|
|
|
SELECT '#5240', dp.path, ST_AsText(dp.geom)
|
|
FROM ( SELECT ST_GeomFromText('MULTIPOLYGON (EMPTY, ((9 9, 9 1, 1 1, 2 4, 7 7, 9 9)) )', 4326) As the_geom ) As foo1, ST_DumpPoints(foo1.the_geom) AS dp;
|