A collection of 2D/3D spatial hashing algorithms. Useful for quick nearest neighbor calculations in 2-, 3-d and N-d.
Inspired by https://github.com/neilmendoza/ofxNearestNeighbour/ and others.
See class documentation and examples for more information.
- Allows for an all-in-one approach to spatially indexing existing point clouds for rapid 2D/3D search.
- Supports easy use of
ofVec2f
,ofVec3f
,ofVec2f
,glm::vec2
,glm::vec3
,glm::vec4
. - Supports
N
dimensional hash usingstd::array<float, N>
. Seeexample_kdtree_nd
for a 3d version.
To get started, generate the example project files using the openFrameworks Project Generator.
API documentation can be found here.
The stable
branch of this repository is meant to be compatible with the openFrameworks stable branch, which corresponds to the latest official openFrameworks release.
The master
branch of this repository is meant to be compatible with the openFrameworks master branch.
Some past openFrameworks releases are supported via tagged versions, but only stable
and master
branches are actively supported.
This project uses Semantic Versioning, although strict adherence will only come into effect at version 1.0.0.
See LICENSE.md
.
Pull Requests are always welcome, so if you make any improvements please feel free to float them back upstream :)
- Fork this repository.
- Create your feature branch (
git checkout -b my-new-feature
). - Commit your changes (
git commit -am 'Add some feature'
). - Push to the branch (
git push origin my-new-feature
). - Create new Pull Request.