Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
ST_Boundary
ST_Boundary renvoie la limite d’une géométrie d’entrée comme suit :
Si la géométrie en entrée est vide (c’est-à-dire qu’elle ne contient aucun point), elle est renvoyée telle quelle.
Si la géométrie en entrée est un point ou un multipoint non vide, une collection de géométries vide est renvoyée.
Si l’entrée est une linestring ou une multilinestring, un multipoint contenant tous les points de la limite est renvoyé. Le multipoint peut être vide.
Si l’entrée est un polygone qui n’a pas d’anneaux intérieurs, une linestring fermée représentant sa limite est renvoyée.
Si l’entrée est un polygone qui a des anneaux intérieurs ou un multipolygone, une multilinestring est renvoyée. La valeur multilinestring contient toutes les limites de tous les anneaux de la géométrie de surface sous forme de linestrings fermées.
Pour déterminer l’égalité des points, ST_Boundary opère sur la projection 2D de la géométrie en entrée. Si la géométrie en entrée est vide, une copie de celle-ci est renvoyée dans la même dimension que l’entrée. Pour les géométries 3DM et 4D non vides, leurs coordonnées m
sont supprimées. Dans le cas particulier des multilinestrings 3DZ et 4D, les coordonnées z
des points limites de la multilinestring sont calculés comme les moyennes des valeurs z distinctes des points limites linéaires avec la même projection 2D.
Syntaxe
ST_Boundary(geom)
Arguments
- geom
-
Valeur de type de données
GEOMETRY
ou expression qui est évaluée sur un typeGEOMETRY
.
Type de retour
GEOMETRY
Si geom est null, null est renvoyé.
Si geom n’est pas un GEOMETRYCOLLECTION
, une erreur est renvoyée.
Exemples
Le code SQL suivant renvoie la limite du polygone en entrée en tant que multilinestring.
SELECT ST_AsEWKT(ST_Boundary(ST_GeomFromText('POLYGON((0 0,10 0,10 10,0 10,0 0),(1 1,1 2,2 1,1 1))')));
st_asewkt
--------------------
MULTILINESTRING((0 0,10 0,10 10,0 10,0 0),(1 1,1 2,2 1,1 1))