georust / rstar

R*-tree spatial index for the Rust ecosystem
https://docs.rs/rstar
Apache License 2.0
414 stars 68 forks source link

Thoughts about the feasibility of adding a RTree::relocate_with_selection_function() method #176

Open WildRackoon opened 2 months ago

WildRackoon commented 2 months ago

If I am not mistaken, currently the only way to change the envelope of an RTreeObject within the tree is to remove then re-insert it somewhere else later. Most generically using:

I am not familiar with all the technical details of rstar, but like most trees, I believe there may be some optimization to be done in some area:

It would probably need some work for all primitives, like GeomWithData.

Resulting methods would probably look like: