- Must be C++/CUDA compatible
- Provides both kNN and range queries
- Must be thread safe
- The idea is to provide a uniform iterator based API ** For kNN, the query is performed at construction time, neighbors are stored into the iterator, and operator++ is straightforward. ** For range queries, everything is done by operator++: it iterates over the nodes and the neighbors of the current leaf...
- Open questions: ** What about the end iterator? we would probably have to create a dummy iterator and restrict operator != to the comparison of a regular iterator and a dummy one...
- Add Scalar class to detect numerical instabilities due to type precision at runtime (http://cpp.sh/9o2o)
- Projection: think about the API
- Eval at distance (need multires kdtree)
- Cache of neighbors (multipass)
- Contouring: edge-based, then octree or CGAL
- More unit-tests
- Curvature comparisons (http://dgtal.org/tools/)
- Mathlab interface
- Stability APSS derivatives
- Higher-order elements