> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wherobots.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ST_Affine (Python)

> Apply a 3D/2D affine transformation to the given geometry x = a * x + b * y + c * z + xOff | x = a * x + b * y + xOff y = d * x + e * y + f * z + yOff | y = d * x + e * y + yOff z = g * x + h * y...

Apply a 3D/2D affine transformation to the given geometry
x = a \* x + b \* y + c \* z + xOff | x = a \* x + b \* y + xOff
y = d \* x + e \* y + f \* z + yOff | y = d \* x + e \* y + yOff
z = g \* x + h \* y + i \* z + zOff

SQL reference: [`ST_Affine`](/reference/wherobots-db/geometry-data/affine-transformations/ST_Affine)

## Signature

```python theme={"system"}
from sedona.spark.sql.st_functions import ST_Affine

ST_Affine(
    geometry: ColumnOrName,
    a: Union[ColumnOrName, float],
    b: Union[ColumnOrName, float],
    d: Union[ColumnOrName, float],
    e: Union[ColumnOrName, float],
    xOff: Union[ColumnOrName, float],
    yOff: Union[ColumnOrName, float],
    c: Optional[Union[ColumnOrName, float]] = None,
    f: Optional[Union[ColumnOrName, float]] = None,
    g: Optional[Union[ColumnOrName, float]] = None,
    h: Optional[Union[ColumnOrName, float]] = None,
    i: Optional[Union[ColumnOrName, float]] = None,
    zOff: Optional[Union[ColumnOrName, float]] = None,
) -> Column
```

## Parameters

<ParamField path="geometry" type="ColumnOrName" required>
  Geometry to apply affine transformation to
</ParamField>

<ParamField path="a" type="Union[ColumnOrName, float]" required />

<ParamField path="b" type="Union[ColumnOrName, float]" required />

<ParamField path="d" type="Union[ColumnOrName, float]" required />

<ParamField path="e" type="Union[ColumnOrName, float]" required />

<ParamField path="xOff" type="Union[ColumnOrName, float]" required />

<ParamField path="yOff" type="Union[ColumnOrName, float]" required />

<ParamField path="c" type="Optional[Union[ColumnOrName, float]]" default="None">
  Default 0.0
</ParamField>

<ParamField path="f" type="Optional[Union[ColumnOrName, float]]" default="None">
  Default 0.0
</ParamField>

<ParamField path="g" type="Optional[Union[ColumnOrName, float]]" default="None">
  Default 0.0
</ParamField>

<ParamField path="h" type="Optional[Union[ColumnOrName, float]]" default="None">
  Default 0.0
</ParamField>

<ParamField path="i" type="Optional[Union[ColumnOrName, float]]" default="None">
  Default 0.0
</ParamField>

<ParamField path="zOff" type="Optional[Union[ColumnOrName, float]]" default="None">
  Default 0.0
</ParamField>

## Returns

<ResponseField name="return" type="Column">
  Geometry with affine transformation applied
</ResponseField>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.