Skip to content

Normalize unit-sphere geometry input to longitude/latitude - #20

Open
asinghvi17 wants to merge 4 commits into
spherical/datumfrom
spherical/usp
Open

asinghvi17 wants to merge 4 commits into
spherical/datumfrom
spherical/usp

Conversation

@asinghvi17

@asinghvi17 asinghvi17 commented Sep 20, 2026

Copy link
Copy Markdown
Member

Spherical lookups now accept GeometryOps UnitSphericalPoint input, including points inside lines and polygons, and normalize it to longitude/latitude at construction and query boundaries. Tables and raster point extraction therefore emit coordinates that other geometry consumers can use.

The conversion preserves supplied geographic CRS metadata and works with the preceding datum-resolution layer. USP's intrinsic Cartesian CRS is excluded from inferred geographic metadata; a table explicitly declaring that internal CRS is rejected with guidance to supply the geographic CRS. Ordinary three-coordinate points are unchanged.

Scalar USP selectors are disambiguated from vector selectors for At, Near, Contains, DE9IM predicates, and hasselection. Indexed spherical nearest queries from the preceding PR remain in place.

Validation: 44 USP assertions pass on Julia 1.10 and 1.13, covering conversion, selectors, table and extraction output, bare USP input, custom datums, and missing CRS. The combined construction, datum, and nearest suites also pass on both versions. This is the fourth PR in the GitHub stack.

The complete combined suite passes on Julia 1.13: 2,470 assertions, including the existing planar, raster, table, and Makie tests. The no-Proj path additionally runs in a fresh subprocess.

@asinghvi17
asinghvi17 added this pull request to stack #18 September 20, 2026 20:35
@asinghvi17 asinghvi17 changed the title spherical/usp Normalize unit-sphere geometry input to longitude/latitude Sep 20, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant