- Categorias:
ST_MAKEPOLYGON , ST_POLYGON¶
Cria um objeto GEOGRAPHY ou GEOMETRY que representa um polígono sem furos. A função utiliza o LineString especificado como o loop externo.
Esta função corrige a orientação do loop para evitar a criação de polígonos que se estendem por mais da metade do globo. Em contraste, ST_MAKEPOLYGONORIENTED não tenta corrigir a orientação do loop.
- Consulte também:
Sintaxe¶
ST_MAKEPOLYGON( <geography_or_geometry_expression> )
Argumentos¶
geography_or_geometry_expression
Um objeto GEOGRAPHY ou GEOMETRY que representa um LineString em que o último ponto é o mesmo que o primeiro (ou seja, um loop).
Retornos¶
A função retorna um valor do tipo GEOGRAPHY ou GEOMETRY.
Notas de uso¶
As linhas do polígono devem formar um loop. Em outras palavras, o último ponto da sequência de pontos que definem o LineString deve ser o mesmo ponto que o primeiro da sequência.
ST_POLYGON é um alias para ST_MAKEPOLYGON.
Para objetos GEOMETRY, o objeto GEOMETRY retornado tem o mesmo SRID que a entrada.
Exemplos¶
Exemplos GEOGRAPHY¶
Isso mostra uma simples utilização da função ST_MAKEPOLYGON. A sequência de pontos abaixo define uma área retangular geodésica de 1 grau de largura e 2 graus de altura, com o canto inferior esquerdo do polígono começando no equador (latitude) e Greenwich (longitude). O último ponto da sequência é o mesmo que o primeiro, que completa o loop.
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)) | +--------------------------------+
Exemplos GEOMETRY¶
Isso mostra uma simples utilização da função 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)) | +--------------------------------+