st_concavehull Funkce

Platí pro:check označený jako ano Kontrola SQL Databricks označená jako ano Databricks Runtime 17.1 a vyšší

Poznámka:

Tato funkce není k dispozici ve skladech Databricks SQL Classic. Další informace o službě Databricks SQL Warehouse najdete v tématu Typy SQL Warehouse.

Vrátí konkávní obal vstupní hodnoty GEOMETRY jako hodnotu GEOMETRY, pomocí zadaného poměru délky.

Syntax

st_concavehull ( geoExpr, lengthRatioExpr[, allowHolesExpr])

Arguments

  • geoExpr: Hodnota GEOMETRY.
  • lengthRatio DOUBLE- Hodnota mezi 0 a 1včetně představující poměr délky použitý k výpočtu zřetězení trupu.
  • allowHoles - Volitelná BOOLEAN hodnota, která označuje, zda může výstupní geometrie, pokud je mnohoúhelníkem, mít díry. Výchozí hodnota je false.

Returns

GEOMETRY Vrátí hodnotu, která je konkávním obalem vstupní GEOMETRY hodnoty pomocí zadaného poměru délky. Výsledná geometrie, pokud jde o mnohoúhelník, může mít otvory pouze tehdy, je-li třetí argument nastaven na pravda. Hodnota SRID výstupní GEOMETRY hodnoty se rovná hodnotě vstupní GEOMETRY hodnoty. Pokud poměr délky není mezi 0 a 1 včetně, vrátí se chyba.

Poměr délky určuje prahovou hodnotu na základě rozsahu mezi nejkratšími a nejdelšími hrany v triangulaci vstupních bodů Delaunay. Z triangulace se odstraní hrany, které jsou delší než tato prahová hodnota. Zbývající trojúhelníky definují konkávní obal. Pro areální vstupní geometrie (polygony nebo multipolygony) používá algoritmus omezené Delaunayovy triangulace. Výsledná konkávní obálka respektuje vstupní GEOMETRY hodnotu a obsahuje jeho původní mnohoúhelníky.

Examples

> SELECT st_astext(st_concavehull(st_geomfromtext('MULTIPOINT(0 0,10 0,10 10,0 10,1 1,1 5,1 9,5 1,9 9,9 1,9 5,5 9)'), 1));
  POLYGON((0 0,0 10,10 10,10 0,0 0))

> SELECT st_astext(st_concavehull(st_geomfromtext('MULTIPOINT(0 0,10 0,10 10,0 10,1 1,1 5,1 9,5 1,9 9,9 1,9 5,5 9)'), 0.8));
  POLYGON((0 0,1 5,0 10,5 9,10 10,9 5,10 0,5 1,0 0))