jiayuasu opened a new pull request, #3135: URL: https://github.com/apache/sedona/pull/3135
## Did you read the Contributor Guide? - Yes, I have read the [Contributor Rules](https://sedona.apache.org/latest/community/rule/) and [Contributor Development Guide](https://sedona.apache.org/latest/community/develop/). ## Is this PR related to a ticket? - Yes, and the PR name follows the format `[GH-XXX] my subject`. - Closes #3134. - Part of #2230. ## What changes were proposed in this PR? - Add `GeoSeries.affine_transform(matrix)` and GeoDataFrame geometry-column delegation. - Execute 2D and 3D affine transforms as distributed `ST_Affine` Spark expressions without driver collection or Python row UDFs. - Validate that matrices contain exactly 6 or 12 numeric coefficients, reject distributed/per-row inputs, and normalize valid coefficients to Python floats. - Map GeoPandas' 12-value coefficient order explicitly to Sedona's Python wrapper order. - Preserve index, CRS, SRID, nulls, typed empty geometries, and Z coordinates for 2D transforms. - Document JTS/Shapely differences for mixed-dimensional collections, M/ZM ordinates, and NaN Z values. - Add direct and GeoPandas parity coverage for 2D/3D transformations, geometry families, metadata, delegation, validation, and the coefficient-order regression. ## How was this patch tested? - `python -m pytest -p no:cacheprovider -q tests/geopandas/test_geoseries.py tests/geopandas/test_match_geopandas_series.py -k affine_transform` — 10 passed. - Repository formatting, lint, security, and license hooks passed for all four changed files. ## Did this PR include necessary documentation updates? - Yes. The new public API includes its coefficient layouts, equations, example, and engine-compatibility notes in the API docstring. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
