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]

Reply via email to