st_makeenvelope functie

Van toepassing op:controleren gemarkeerd als Ja Databricks Runtime 18.2 en hoger

Important

Deze functie bevindt zich in openbare preview-versie.

Retourneert een GEOMETRY waarde die de op de 2D-as uitgelijnde envelop vertegenwoordigt (minimumbegrenzingsvak) die is gedefinieerd door de twee hoekcoördinaten (x1, y1) en (x2, y2).

Syntax

st_makeenvelope ( x1, y1, x2, y2 )

Arguments

  • x1: Een DOUBLE waarde, die de X-coördinaat van de eerste hoek vertegenwoordigt.
  • y1: Een DOUBLE waarde, die de Y-coördinaat van de eerste hoek vertegenwoordigt.
  • x2: Een DOUBLE waarde, die de X-coördinaat van de tweede hoek vertegenwoordigt.
  • y2: Een DOUBLE waarde, die de Y-coördinaat van de tweede hoek vertegenwoordigt.

Returns

Een waarde van het type GEOMETRY, die de op de 2D-as uitgelijnde envelop van de twee invoerhoeken vertegenwoordigt. De SRID van de geretourneerde geometrie is 0.

De invoerhoeken kunnen in elke volgorde worden verstrekt; de resulterende envelop is hetzelfde als wanneer de hoeken zijn genormaliseerd tot (xmin, ymin) en (xmax, ymax).

Het type geretourneerde geometrie is afhankelijk van de invoerhoeken:

  • Als het vak wordt ontaard naar een enkel punt (x1 = x2 en y1 = y2), is het resultaat een punt.
  • Als het vak wordt ontaard in een segment (x1 = x2 of y1 = y2, maar niet beide), is het resultaat een lijnentring met twee punten.
  • Anders is het resultaat een veelhoek met vijf hoekpunten (gesloten ring).

De functie retourneert NULL als een van de invoerwaarden is NULL.

Examples

-- 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