diff options
author | cjamin <cjamin@636b058d-ea47-450e-bf9e-a15bfbe3eedb> | 2016-06-30 13:31:23 +0000 |
---|---|---|
committer | cjamin <cjamin@636b058d-ea47-450e-bf9e-a15bfbe3eedb> | 2016-06-30 13:31:23 +0000 |
commit | dfc61b827ae2aa7f99e2ae8401f19f6f0d219af3 (patch) | |
tree | b9d5655cbac98836452a1f05d2c22a3f904c913d | |
parent | 0a2844e38d40bebb0825f7833f14f434635628ae (diff) |
Improved example
git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/branches/subsampling_and_spatialsearching@1363 636b058d-ea47-450e-bf9e-a15bfbe3eedb
Former-commit-id: 0b6e59f5c3c7c93eaed74c93f8b0284143574cd3
-rw-r--r-- | src/Spatial_searching/example/example_spatial_searching.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/Spatial_searching/example/example_spatial_searching.cpp b/src/Spatial_searching/example/example_spatial_searching.cpp index ba387b71..1a807b90 100644 --- a/src/Spatial_searching/example/example_spatial_searching.cpp +++ b/src/Spatial_searching/example/example_spatial_searching.cpp @@ -16,10 +16,6 @@ int main (void) typedef std::vector<Point> Points; typedef gss::Spatial_tree_data_structure<K, Points> Points_ds; - typedef typename Points_ds::KNS_range KNS_range; - typedef typename Points_ds::KNS_iterator KNS_iterator; - typedef typename Points_ds::INS_range INS_range; - typedef typename Points_ds::INS_iterator INS_iterator; CGAL::Random rd; @@ -29,9 +25,18 @@ int main (void) Points_ds points_ds(points); + // 20-nearest neighbor query + std::cout << "20 nearest neighbors:\n"; auto kns_range = points_ds.query_ANN(points[20], 10, true); for (auto const& nghb : kns_range) std::cout << nghb.first << " (sq. dist. = " << nghb.second << ")\n"; + // Incremental nearest neighbor query + std::cout << "Incremental nearest neighbors:\n"; + auto ins_range = points_ds.query_incremental_ANN(points[45]); + // Get all the neighbors that are closer than 0.5 + for (auto ins_iterator = ins_range.begin(); ins_iterator->second < 0.5*0.5 ; ++ins_iterator) + std::cout << ins_iterator->first << " (sq. dist. = " << ins_iterator->second << ")\n"; + return 0; } |