
On Mon, Jul 26, 2010 at 2:35 PM, Adam Wulkiewicz <adam.wulkiewicz@gmail.com> wrote:
Hi,
It's my first message so I'd like to introduce myself. My name's Adam Wulkiewicz, I'm a doctoral student of Technical University of Lodz, Poland.
I'd like to take part in evolution of Boost library. I've implemented some space partitioning data structures and k-dimensional generalizations of STL containers and thought that since these kind of containers are useful to many people it would be nice to have them in Boost.
For people who don't know what are space partitioning data structures: These data structures divides arbitrary k-dimensional space containing some k-dimensional 'objects' to accelerate searching for an 'object' or subset of 'objects' placed in a part of divided space. Just like fe. a binary tree divides a set of numbers to accelerate searching.
These data structures are used fe. in: - computer graphics to accelerate rendering (searching of 3D objects, fe. triangles in raytracing or photons in photon mapping), - games to accelerate testing for intersection of rays with a scene and movable objects.
In these examples 'the space' is 'common' 3D euclidean space but you may divide every space you like to accelerate searching: spherical space, space containing features of an object used in image recognition process and so on.
I've implemented: - k-dimensional generalizations of STL containers (used by some space partitioning data structures) - k-dimensional space partitioning data structures - regular grid - kd-tree - something I've called regular tree, it's k-dimensional generalization of quadtree/octree, so for k=2 it's quadtree, for k=3 it's octree, for k=4 it's 16tree and so on. - k-dimensional euclidean algebra/geometry data structures - points, vectors etc., - unit tests.
There are boost-like names used in code allready. If you'd like to know more just ask.
My question is, what do you think about it?
I am quite interested, I would have use for such a library.