st_makeenvelope Función

Se aplica a:check marcado yes Databricks Runtime 18.2 y versiones posteriores

Important

Esta característica está en versión preliminar pública.

Devuelve un GEOMETRY valor que representa el sobre alineado con el eje 2D (rectángulo de límite mínimo) definido por las dos coordenadas (x1, y1) de esquina y (x2, y2).

Syntax

st_makeenvelope ( x1, y1, x2, y2 )

Argumentos

  • x1: valor DOUBLE que representa la coordenada X de la primera esquina.
  • y1: valor DOUBLE que representa la coordenada Y de la primera esquina.
  • x2: valor DOUBLE que representa la coordenada X de la segunda esquina.
  • y2: valor DOUBLE que representa la coordenada Y de la segunda esquina.

Devoluciones

Valor de tipo GEOMETRY, que representa el sobre alineado con el eje 2D de las dos esquinas de entrada. El SRID de la geometría devuelta es 0.

Las esquinas de entrada se pueden proporcionar en cualquier orden; el sobre resultante es el mismo que si las esquinas se normalizaran en (xmin, ymin) y (xmax, ymax).

El tipo de geometría devuelta depende de las esquinas de entrada:

  • Si el cuadro se degenera en un único punto (x1 = x2 y y1 = y2), el resultado es un punto.
  • Si el cuadro se degenera en un segmento (x1 = x2 o y1 = y2, pero no ambos), el resultado es una cadena de líneas con dos puntos.
  • De lo contrario, el resultado es un polígono con cinco vértices (anillo cerrado).

La función devuelve NULL si alguna de las entradas es NULL.

Ejemplos

-- Returns the polygon envelope defined by two corners.
> SELECT st_astext(st_makeenvelope(1.0, 2.0, 4.0, 6.0));
  POLYGON((1 2,1 6,4 6,4 2,1 2))
-- Corners may be provided in any order.
> SELECT st_astext(st_makeenvelope(4.0, 6.0, 1.0, 2.0));
  POLYGON((1 2,1 6,4 6,4 2,1 2))
-- Returns a point when the box degenerates to a point.
> SELECT st_astext(st_makeenvelope(3.0, 5.0, 3.0, 5.0));
  POINT(3 5)
-- Returns a linestring when the box degenerates to a horizontal segment.
> SELECT st_astext(st_makeenvelope(1.0, 0.0, 4.0, 0.0));
  LINESTRING(1 0,4 0)
-- Returns a linestring when the box degenerates to a vertical segment.
> SELECT st_astext(st_makeenvelope(0.0, 2.0, 0.0, 7.0));
  LINESTRING(0 2,0 7)
-- The SRID of the returned geometry is always 0.
> SELECT st_srid(st_makeenvelope(0.0, 0.0, 10.0, 10.0));
  0