- Catégories :
ST_MAKEPOLYGON , ST_POLYGON¶
Construit un objet GEOGRAPHY ou GEOMETRY qui représente un polygone sans trous. La fonction utilise la LineString spécifiée comme boucle externe.
Cette fonction corrige l’orientation de la boucle pour empêcher la création de polygones qui s’étendent sur plus de la moitié du globe. En revanche, ST_MAKEPOLYGONORIENTED ne tente pas de corriger l’orientation de la boucle.
- Voir aussi :
Syntaxe¶
ST_MAKEPOLYGON( <geography_or_geometry_expression> )
Arguments¶
geography_or_geometry_expression
Un objet GEOGRAPHY ou GEOMETRY qui représente un LineString dans lequel le dernier point est le même que le premier (c’est-à-dire une boucle).
Renvoie¶
La fonction renvoie une valeur de type GEOGRAPHY ou GEOMETRY.
Notes sur l’utilisation¶
Les lignes du polygone doivent former une boucle. En d’autres termes, le dernier point de la séquence de points définissant la LineString doit être le même point que le premier point de la séquence.
ST_POLYGON est un alias pour ST_MAKEPOLYGON.
Pour les objets GEOMETRY, l’objet GEOMETRY renvoyé a le même SRID que l’entrée.
Exemples¶
Exemples GEOGRAPHY¶
Cela montre une utilisation simple de la fonction ST_MAKEPOLYGON. La séquence de points ci-dessous définit une zone géodésique rectangulaire de 1 degré de large et de 2 degrés de haut, le coin inférieur gauche du polygone commençant à l’équateur (latitude) et à Greenwich (longitude). Le dernier point de la séquence est le même que le premier point, qui complète la boucle.
SELECT ST_MAKEPOLYGON( TO_GEOGRAPHY('LINESTRING(0.0 0.0, 1.0 0.0, 1.0 2.0, 0.0 2.0, 0.0 0.0)') ) AS polygon1; +--------------------------------+ | POLYGON1 | |--------------------------------| | POLYGON((0 0,1 0,1 2,0 2,0 0)) | +--------------------------------+
Exemples GEOMETRY¶
Cela montre une utilisation simple de la fonction ST_MAKEPOLYGON.
SELECT ST_MAKEPOLYGON( TO_GEOMETRY('LINESTRING(0.0 0.0, 1.0 0.0, 1.0 2.0, 0.0 2.0, 0.0 0.0)') ) AS polygon;+--------------------------------+ | POLYGON | |--------------------------------| | POLYGON((0 0,1 0,1 2,0 2,0 0)) | +--------------------------------+