Header-only library of generic multi-dimensional containers, with iterators over orthogonal range or nearest neighbors, in C++, modeled after the STL.
A brief overview of the Spatial C++ Library's features: based on k-d trees which provide good overall performance for only 3 pointers of overhead per node; sort objects along several dimensions, which may be of different types; static (compile-time) or dynamic (run-time) determination of the number of dimensions; Policy-based rebalancing of the k-d tree, limiting worst-case performance, upon insertion and removal; Insertions in logarithmic amortized time, removals in fractional amortized time; Closely resemble the STL in design, with compatible containers and iterators; Iteration over orthogonal range with custom predicates and support for points or boxes; Iteration over neighbors, from nearest to furthest with custom metrics; Iteration over a single dimension, independantly from others; etc.
Check out the website for more info
- Generic implementation of Kdtrees in C++
- API design is similar to the STL
- Aim at good overall performance
- Sort objects along several dimensions that may be of different types
- static (compile-time) or dynamic (run-time) determination of the number of dimensions
- Insertions in logarithmic amortized time, removals in fractional amortized time
- Iteration over orthogonal range
- Iteration over neighbors, from nearest to furthest
- Iteration over a single dimension, independantly from others
Be the first to post a review of Spatial C++ Library!