
On Thu, Sep 11, 2008 at 8:43 PM, Christian Holmquist <c.holmquist@gmail.com> wrote:
I have one early question, have you considered pushing the quadtree and rtree classes into boost::intrusive, or designing them in the spirit of boost::intrusive? The audience who's in need of large spatial databases (the ones who doesn't need it are fine with linear scans) is likely to hunt for performance. IMO boost::intrusive has given a flexibility to c++ containers not available elsewhere, it'd be a clear winner if your quadtree and rtree can be implemented in generic terms.
I have a generic n-ary tree library that might be a good starting point for integrating into Intrusive. It already has its own intrusive tree with a regular tree container built on top of that, plus a post order iterator. I've sent a preliminary version to Ion a while ago, but it's since matured beyond that. I'll also have to check if I can make the full code available since it's work related, but so far I've built a Bounding Interval Hierarchy off its foundations. Regardless of how this gets accomplished, I completely agree that the base class for all of these spatial index classes belongs in Intrusive, with Quad-trees, etc built on top in intrusive and non-intrusive flavors. --Michael Fawcett