diff options
author | skachano <skachano@636b058d-ea47-450e-bf9e-a15bfbe3eedb> | 2016-06-21 09:20:44 +0000 |
---|---|---|
committer | skachano <skachano@636b058d-ea47-450e-bf9e-a15bfbe3eedb> | 2016-06-21 09:20:44 +0000 |
commit | 1539aa803375bbb562559ab632d8ce22c6ce940b (patch) | |
tree | f92498789d5ff9de93f8d5402987b710eb3edbf1 /src/Subsampling | |
parent | 80c45e3f6a8a1f823840b3ae9e924362d7e376b7 (diff) |
Merged the CMakeLists and added test_choose_by_farthest_point
git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/branches/subsampling_and_spatialsearching@1318 636b058d-ea47-450e-bf9e-a15bfbe3eedb
Former-commit-id: 534a2ac30a2177a780d1f483add2c472d4cedac3
Diffstat (limited to 'src/Subsampling')
-rw-r--r-- | src/Subsampling/include/gudhi/choose_by_farthest_point.h | 4 | ||||
-rw-r--r-- | src/Subsampling/test/CMakeLists.txt | 14 | ||||
-rw-r--r-- | src/Subsampling/test/test_choose_farthest_point.cpp | 35 |
3 files changed, 51 insertions, 2 deletions
diff --git a/src/Subsampling/include/gudhi/choose_by_farthest_point.h b/src/Subsampling/include/gudhi/choose_by_farthest_point.h index 61a21f44..9877d5eb 100644 --- a/src/Subsampling/include/gudhi/choose_by_farthest_point.h +++ b/src/Subsampling/include/gudhi/choose_by_farthest_point.h @@ -25,6 +25,8 @@ #include <gudhi/Spatial_tree_data_structure.h> +#include <boost/range.hpp> + #include <iterator> #include <algorithm> // for sort #include <vector> @@ -73,7 +75,7 @@ namespace Gudhi { for (current_number_of_landmarks = 0; current_number_of_landmarks != nbL; current_number_of_landmarks++) { // curr_max_w at this point is the next landmark *output_it++ = points[curr_max_w]; - std::cout << curr_max_w << "\n"; + // std::cout << curr_max_w << "\n"; unsigned i = 0; for (auto& p : points) { double curr_dist = sqdist(p, *(std::begin(points) + curr_max_w)); diff --git a/src/Subsampling/test/CMakeLists.txt b/src/Subsampling/test/CMakeLists.txt index 1785b86d..3a7fc092 100644 --- a/src/Subsampling/test/CMakeLists.txt +++ b/src/Subsampling/test/CMakeLists.txt @@ -1,6 +1,16 @@ cmake_minimum_required(VERSION 2.6) project(Subsampling_tests) +if (GCOVR_PATH) + # for gcovr to make coverage reports - Corbera Jenkins plugin + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage") +endif() +if (GPROF_PATH) + # for gprof to make coverage reports - Jenkins + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pg") +endif() + +# Landmarking test if(CGAL_FOUND) if (NOT CGAL_VERSION VERSION_LESS 4.8.0) message(STATUS "CGAL version: ${CGAL_VERSION}.") @@ -11,7 +21,9 @@ if(CGAL_FOUND) include( ${EIGEN3_USE_FILE} ) include_directories (BEFORE "../../include") - add_executable( landmarking_UT landmarking.cpp ) + add_executable( test_choose_farthest_point test_choose_farthest_point.cpp ) + target_link_libraries(test_choose_farthest_point ${Boost_SYSTEM_LIBRARY} ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}) + add_executable( Subsampling_test_sparsify_point_set test_sparsify_point_set.cpp) else() message(WARNING "Eigen3 not found. Version 3.1.0 is required for Subsampling feature.") diff --git a/src/Subsampling/test/test_choose_farthest_point.cpp b/src/Subsampling/test/test_choose_farthest_point.cpp new file mode 100644 index 00000000..2f83fac9 --- /dev/null +++ b/src/Subsampling/test/test_choose_farthest_point.cpp @@ -0,0 +1,35 @@ +// #ifdef _DEBUG +// # define TBB_USE_THREADING_TOOL +// #endif + +#define BOOST_TEST_DYN_LINK +#define BOOST_TEST_MODULE "witness_complex_points" +#include <boost/test/unit_test.hpp> +#include <boost/mpl/list.hpp> + +#include <gudhi/choose_by_farthest_point.h> +#include <vector> +#include <iterator> + +#include <CGAL/Epick_d.h> + +typedef CGAL::Epick_d<CGAL::Dynamic_dimension_tag> K; +typedef typename K::FT FT; +typedef typename K::Point_d Point_d; + + +BOOST_AUTO_TEST_CASE(test_choose_farthest_point) { + std::vector< Point_d > points, landmarks; + // Add grid points (625 points) + for (FT i = 0; i < 5; i += 1.0) + for (FT j = 0; j < 5; j += 1.0) + for (FT k = 0; k < 5; k += 1.0) + for (FT l = 0; l < 5; l += 1.0) + points.push_back(Point_d(std::vector<FT>({i, j, k, l}))); + + landmarks.clear(); + K k; + Gudhi::choose_by_farthest_point(k, points, 100, std::back_inserter(landmarks)); + + assert(landmarks.size() == 100); +} |