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_ ConvexHull
ST_ ConvexHull renvoie une géométrie qui représente l'enveloppe convexe des points non vides contenus dans la géométrie d'entrée.
Pour une entrée vide, la géométrie résultante est identique à la géométrie en entrée. Pour toutes les entrées non vides, la fonction fonctionne sur la projection 2D de la géométrie en entrée. Toutefois, la dimension de la géométrie en sortie dépend de la dimension de la géométrie en entrée. Plus précisément, lorsque la géométrie en entrée est une géométrie 3DM ou 3D non vide, les coordonnées m
sont supprimées. Autrement dit, la dimension de la géométrie renvoyée est 2D ou 3DZ, respectivement. Si l’entrée est une géométrie 2D ou 3DZ non vide, la géométrie résultante a la même dimension.
Syntaxe
ST_ConvexHull(geom)
Arguments
- geom
-
Valeur de type de données
GEOMETRY
ou expression qui est évaluée sur un typeGEOMETRY
.
Type de retour
GEOMETRY
La valeur de l’identifiant de système de référence spatiale (SRID) de la géométrie renvoyée est la valeur SRID de la géométrie d’entrée.
Si geom est null, null est renvoyé.
Les valeurs renvoyées sont comme suit :
Nombre de points sur l’enveloppe convexe | Sous-type de géométrie |
---|---|
0 |
Une copie de geom est renvoyée. |
1 |
Un sous-type |
2 |
Un sous-type |
3 ou plus |
Un sous-type |
Exemples
Le code SQL suivant renvoie la représentation de texte connu étendu (EWKT) d’une linestring. Dans ce cas, l’enveloppe convexe renvoyée est un polygone.
SELECT ST_AsEWKT(ST_ConvexHull(ST_GeomFromText('LINESTRING(0 0,1 0,0 1,1 1,0.5 0.5)'))) as output;
output
-------------
POLYGON((0 0,0 1,1 1,1 0,0 0))
Le SQL suivant renvoie la représentation EWKT d’une linestring. Dans ce cas, l’enveloppe convexe renvoyée est une linestring.
SELECT ST_AsEWKT(ST_ConvexHull(ST_GeomFromText('LINESTRING(0 0,1 1,0.2 0.2,0.6 0.6,0.5 0.5)'))) as output;
output
-------------
LINESTRING(0 0,1 1)
Le code SQL suivant renvoie la représentation EWKT d’un multipoint. Dans ce cas, l’enveloppe convexe renvoyée est un point.
SELECT ST_AsEWKT(ST_ConvexHull(ST_GeomFromText('MULTIPOINT(0 0,0 0,0 0)'))) as output;
output
-------------
POINT(0 0)