Name

ST_DumpRings — Renvoie un ensemble de lignes geometry_dump pour les anneaux extérieurs et intérieurs d'un polygone.

Synopsis

geometry_dump[] ST_DumpRings(geometry a_polygon);

Description

Une fonction de retour d'ensemble (SRF) qui extrait les anneaux d'un polygone. Elle renvoie un ensemble de geometry_dump lignes, chacune contenant une géométrie (champ geom) et un tableau d'entiers (champ path).

Le champ geom contient chaque anneau sous forme de POLYGONE. Le champ path est un tableau d'entiers de longueur 1 contenant l'indice de l'anneau du polygone. L'anneau extérieur (coquille) a l'indice 0. Les anneaux intérieurs (trous) ont des indices de 1 et plus.

[Note]

This only works for POLYGON geometries, not MULTIPOLYGONs. Use ST_Dump to extract polygon elements from polygonal geometries: ST_DumpRings( (ST_Dump(geom)).geom )

Disponibilité : PostGIS 1.1.3. Nécessite PostgreSQL 7.3 ou plus.

Cette fonction prend en charge la 3D et ne supprime pas l'indice z.

Exemples

Extracting all rings as polygons.

SELECT polyTable.field1, polyTable.field1,
          (ST_DumpRings(polyTable.geom)).geom As geom
FROM polyTable

Extracting shell and holes from a polygon.

SELECT path, ST_AsText(geom) As geom
        FROM ST_DumpRings(
                    'POLYGON ((1 9, 9 9, 9 1, 1 1, 1 9), (2 2, 2 3, 3 3, 3 2, 2 2), (4 2, 4 4, 6 4, 6 2, 4 2))');

 path |              geom              
------+--------------------------------
 {0}  | POLYGON((1 9,9 9,9 1,1 1,1 9))
 {1}  | POLYGON((2 2,2 3,3 3,3 2,2 2))
 {2}  | POLYGON((4 2,4 4,6 4,6 2,4 2))