Releases: jlblancoc/nanoflann
Releases · jlblancoc/nanoflann
Release of v1.6.1
v1.6.0
What's Changed
- Add ifdef to disable pthreads usage by @Sokolmish in #240
- BUG FIX: nanoflann::SearchParameters::sorted was ignored for RadiusResultSet.
- ResultSet classes now must implement a sort() method.
- Added type IndexType to nanoflann:KDTreeBaseClass
New Contributors
- @Sokolmish made their first contribution in #240
Full Changelog: v1.5.5...v1.6.0
Release of v1.5.5
What's Changed
- CMake: Bump minimum version by @jschueller in #230
- Improved concurrency for multi-threaded indexing by @nigels-com in #236
New Contributors
- @jschueller made their first contribution in #230
- @nigels-com made their first contribution in #236
Full Changelog: v1.5.4...v1.5.5
(See full discussion on the need to benchmark your data in #236 )
For 4 threads vs 1 thread
Release of v1.5.4
nanoflann 1.5.4: Released Jan 10, 2024
- Fix outdated NANOFLANN_VERSION macro in header file
- Fix poll-allocator alignment problems
- Add NANOFLANN_USE_SYSTEM_GTEST option
- Look for Threads dependency in CMake config script
Release of v1.5.3
nanoflann 1.5.3: Released Dec 7, 2023
- Other changes:
- Save one redundant call to
computeMinMax()
inmiddleSplit_
(PR#220 by qq422216549).
This saves a lot of time, up to 20% faster in a benchmark with small (thousands) point clouds.
- Save one redundant call to
Release of v1.5.2
Release of v1.5.1
nanoflann 1.5.1: Released Nov 27, 2023
- API changes:
- Add new search method
rknnSearch()
for knn searches with a maximum radius. - Add missing
SearchParameters
argument toKDTreeSingleIndexDynamicAdaptor_::knnSearch()
(PR#213 by ManosPapadakis95). - Add missing method
KNNResultSet::empty()
for consistency with the other result sets.
- Add new search method
- Other changes:
- Add GUI examples for each search type:
nanoflann_gui_example_R3_knn
nanoflann_gui_example_R3_radius
nanoflann_gui_example_R3_rknn
- Add GUI examples for each search type:
Release of v1.5.0
nanoflann 1.5.0: Released Jun 16, 2023
- API changes:
- Users of radius search should change their result placeholder type:
std::vector<std::pair<IndexType, DistanceType>>
=>std::vector<nanoflann::ResultItem<IndexType, DistanceType>>
. (See #166 for the motivation of this change). - More concise auxiliary (internal) type name:
array_or_vector_selector
->array_or_vector
. - Remove obsolete parameter
nChecks_IGNORED
. Removed fromSearchParams
constructor too, so that structure has been renamedSearchParameters
to
enforce users to update the code and avoid mistakes with the order of its
ctor parameters. - Added method RadiusResultSet::empty()
- Template argument rename:
AccesorType
=>IndexType
(does not actually affect user code at all). - Added concurrent tree building support, refer to
KDTreeSingleIndexAdaptorParams::n_thread_build
.
- Users of radius search should change their result placeholder type:
- Other changes:
- Macros to avoid conflicts with X11 symbols.
- Inline an auxiliary example function in case users want to use it and
include the file in multiple translation units (Closes #182). - Move all benchmarking code, data, and scripts to its own repository to keep this repo as clean as possible.
- Fix "potentially uninitialized" GCC warning.
- Clarified, even more, in docs and examples, that L2 distances are squared distances.
- Removed the (with modern compilers) now useless
inline
keyword in class members. - Add examples with GUI (requires mrpt-gui):
- nanoflann_gui_example_R3: Radius search on R³ Euclidean space.
- nanoflann_gui_example_bearings: NN search on non-Euclidean spaces.
- BUGFIXES:
- Avoid segfault if saving an empty index (Closes #205).
Release of v1.4.3
nanoflann 1.4.3: Released Jul 24, 2022
- Added flag SkipInitialBuildIndex to allow not wasting time building a tree when it will be loaded from a file later on (PR #171).
- Mark all constructors explicit, to avoid unintended creation of temporary objects (Issue #179).
- BUGFIX: avoid potential index out of bounds in KDTreeSingleIndexDynamicAdaptor (PR #173)
Release of v1.4.2
nanoflann 1.4.2: Released Jan 11, 2022
- Install pkg-config .pc file under lib directory (Closes #161).
- Integrate AppVeyor CI.