geoarrow / geoarrow-rs

GeoArrow in Rust, Python, and JavaScript (WebAssembly) with vectorized geometry operations
http://geoarrow.org/geoarrow-rs/
Apache License 2.0
249 stars 16 forks source link

Add spatial_join #652

Open deanm0000 opened 3 months ago

deanm0000 commented 3 months ago

https://github.com/msalib/spatial-join

Not sure if you'd prefer to use r star directly but some form of spatial joins would be nice.

kylebarron commented 3 months ago

Spatial joins are already half-implemented in https://github.com/geoarrow/geoarrow-rs/pull/580. https://github.com/msalib/spatial-join is a useful reference but we can't use it directly because it uses geo objects. Additionally, the spatial joins here will use https://github.com/kylebarron/geo-index, which is more memory-efficient and will be quite a bit faster than rstar for our static data use case.

deanm0000 commented 3 months ago

Oh that's awesome. Is this going to be just nearest (or similar) or is the other half (yet to be implemented) going to be other predicates (contains, intersects, etc)?

kylebarron commented 3 months ago

Initially intersects but should be all predicates eventually