Compartilhar via


to_geometria

Importante

Esse recurso está em Visualização Pública.

Analisa o valor BINÁRIO ou de cadeia de caracteres de entrada e retorna o valor geometry correspondente. Um erro é gerado para entrada inválida.

Para consultar a função SQL correspondente do Databricks, veja to_geometry função.

Sintaxe

from pyspark.databricks.sql import functions as dbf

dbf.to_geometry(col=<col>)

Parâmetros

Parâmetro Tipo Description
col pyspark.sql.Column ou str Um valor de cadeia de caracteres no formato WKT ou GeoJSON, ou um valor BINARY no formato WKB ou EWKB que representa um valor de Geometry.

Exemplos

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('POINT Z (3 4 5)',)], ['wkt'])
df.select(dbf.st_asewkt(dbf.to_geometry('wkt')).alias('result')).collect()
[Row(result='POINT Z (3 4 5)')]
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('{"type":"MultiPoint","coordinates":[[3,4,5]]}',)], ['geojson'])
df.select(dbf.st_asewkt(dbf.to_geometry('geojson')).alias('result')).collect()
[Row(result='SRID=4326;MULTIPOINT Z ((3 4 5))')]
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(bytes.fromhex('01ef0300000100000001e9030000000000000000084000000000000010400000000000001440'),)], ['wkb'])
df.select(dbf.st_asewkt(dbf.to_geometry('wkb')).alias('result')).collect()
[Row(result='GEOMETRYCOLLECTION Z (POINT Z (3 4 5))')]
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(bytes.fromhex('01020000a0110f000002000000000000000000084000000000000010400000000000001440000000000000084000000000000010400000000000001440'),)], ['ewkb'])
df.select(dbf.st_asewkt(dbf.to_geometry('ewkb')).alias('result')).collect()
[Row(result='SRID=3857;LINESTRING Z (3 4 5,3 4 5)')]