Поделиться через


st_scale

Это важно

Эта функция доступна в общедоступной предварительной версии.

Масштабирует входную геометрию в направлениях X, Y и Z с помощью заданных факторов.

Для соответствующей функции Databricks SQL смотрите функцию st_scale.

Синтаксис

from pyspark.databricks.sql import functions as dbf

dbf.st_scale(col1=<col1>, col2=<col2>, col3=<col3>, col4=<col4>)

Параметры

Параметр Тип Description
col1 pyspark.sql.Column или str Geometry значение.
col2 pyspark.sql.Column или с плавающей запятой Значение типа DOUBLE, представляющее коэффициент масштабирования X.
col3 pyspark.sql.Column или с плавающей запятой Значение DOUBLE, представляющее коэффициент масштабирования Y.
col4 pyspark.sql.Column или float, необязательный Значение DOUBLE, представляющее коэффициент масштабирования Z (необязательно). По умолчанию 1.

Примеры

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('MULTIPOINT ZM (1 2 3 -4,5 6 7 -8,EMPTY)',)], ['wkt'])
df.select(dbf.st_asewkt(dbf.st_scale(dbf.st_geomfromtext('wkt', 4326), 10.0, 20.0)).alias('result')).collect()
[Row(result='SRID=4326;MULTIPOINT ZM ((10 40 3 -4),(50 120 7 -8),EMPTY)')]
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('MULTIPOINT ZM (1 2 3 -4,5 6 7 -8,EMPTY)',)], ['wkt'])
df.select(dbf.st_asewkt(dbf.st_scale(dbf.st_geomfromtext('wkt', 4326), 10.0, 20.0, 3.0)).alias('result')).collect()
[Row(result='SRID=4326;MULTIPOINT ZM ((10 40 9 -4),(50 120 21 -8),EMPTY)')]