這很重要
這項功能目前處於 公開預覽版。
會以指定的長度比例將輸入幾何的凹包返回為幾何。
關於對應的 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.Column 或 str |
幾何的值。 |
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))')]