Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:
Databricks SQL
Databricks Runtime 17.1 and above
Important
Esse recurso está em Visualização Pública.
Observação
Esse recurso não está disponível em databricks SQL Classic warehouses. Para saber mais sobre os sql warehouses do Databricks, consulte os tipos de sql warehouse.
Retorna o casco côncavo do valor de entrada GEOMETRY como um valor GEOMETRY, usando a proporção de comprimento especificada.
Syntax
st_concavehull ( geoExpr, lengthRatioExpr[, allowHolesExpr])
Arguments
-
geoExpr: valor deGEOMETRY. -
lengthRatio- UmDOUBLEvalor entre0e1, inclusive, que representa a taxa de comprimento usada para calcular o casco côncavo. -
allowHoles- Um valor opcionalBOOLEAN, indicando se a geometria de saída, se um polígono, tem permissão para ter buracos. O valor padrão é false.
Returns
Retorna um GEOMETRY valor que é o casco côncavo do valor de entrada GEOMETRY usando a taxa de comprimento especificada. A geometria resultante, se for um polígono, tem permissão para ter orifícios se e somente se o terceiro argumento estiver definido como verdadeiro.
O valor SRID do valor de saída GEOMETRY é igual ao do valor de entrada GEOMETRY .
Um erro será retornado se a taxa de comprimento não estiver entre 0 e 1, inclusive.
A razão de comprimento determina um limite com base no intervalo entre as bordas mais curtas e mais longas na Triangulação de Delaunay dos pontos de entrada. Bordas maiores que esse limite são removidas da triangulação. Os triângulos restantes definem o casco côncavo.
Para geometrias de entrada areais (polígonos ou multipolígonos), o algoritmo usa uma triangulação Delaunay restrita. O casco côncavo resultante respeita o valor de entrada GEOMETRY e inclui seus polígonos originais.
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))