共用方式為


st_concavehull

這很重要

這項功能目前處於 公開預覽版

會以指定的長度比例將輸入幾何的凹包返回為幾何。

關於對應的 Databricks SQL 函式,請參見 st_concavehull 函數

語法

from pyspark.databricks.sql import functions as dbf

dbf.st_concavehull(col1=<col1>, col2=<col2>, col3=<col3>)

參數

參數 類型 Description
col1 pyspark.sql.Columnstr 幾何的值。
col2 pyspark.sql.Column 或浮動 double 介於 0 和 1 之間的值(含邊界),代表用於計算凹殼的長度比例。
col3 pyspark.sql.Column 或布爾 一個可選 boolean 值,表示輸出幾何體(若為多邊形)是否允許有孔洞。 預設值是 False

範例

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('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)], ['wkt','ratio'])
df.select(dbf.st_astext(dbf.st_concavehull(dbf.st_geomfromtext('wkt'), 'ratio')).alias('result')).collect()
[Row(result='POLYGON((0 0,1 5,0 10,5 9,10 10,9 5,10 0,5 1,0 0))')]