Hi everyone,
 
I need a way to take a collection of 3D objects and put them into disjoint minimally overlapping groups no bigger than some N.  Can this be done with Boost's rtree or any other Boost libraries?

I've done this by putting the objects in an R* tree and using the nodes at a certain level of the tree (for example, 2 levels up from the leaf level) to determine the groups.
However, that was in my own Java R* tree implementation that provided read-only access to its internal nodes.
I'd like to port this program to C++ using Boost's rtree, but it doesn't provide read-only access to its nodes, does it?  Does anyone know if it would be possible to extend the rtree to provide this?
Or would it be possible to write a custom predicate to get the groupings?

Thanks!
Andy