|
|
## General improvements
|
|
|
### Data structures
|
|
|
|
|
|
#### kd-tree
|
|
|
|
|
|
* 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...
|
|
|
|
|
|
#### half-edge
|
|
|
|
|
|
#### aabb-tree
|
|
|
|
|
|
### Tests ###
|
|
|
* Add Scalar class to detect numerical instabilities due to type precision at runtime (http://cpp.sh/9o2o)
|
|
|
|
|
|
## Grenaille
|
|
|
### En vrac
|
|
|
* Projection: think about the API
|
|
|
* Eval at distance (need multires kdtree)
|
|
|
* Multires
|
|
|
* Cache of neighbors (multipass)
|
|
|
* Contouring: edge-based, then octree or CGAL
|
|
|
* Up-sampling
|
|
|
* More unit-tests
|
|
|
* Curvature comparisons (http://dgtal.org/tools/)
|
|
|
* Mathlab interface
|
|
|
|
|
|
### In progress
|
|
|
* Stability APSS derivatives
|
|
|
|
|
|
## Vitelotte
|
|
|
### En vrac
|
|
|
* Higher-order elements
|
|
|
* Quads |
|
|
\ No newline at end of file |