diff options
Diffstat (limited to 'example/Alpha_complex')
-rw-r--r-- | example/Alpha_complex/Alpha_complex_from_off.cpp | 63 | ||||
-rw-r--r-- | example/Alpha_complex/Alpha_complex_from_points.cpp | 68 | ||||
-rw-r--r-- | example/Alpha_complex/CMakeLists.txt | 35 | ||||
-rw-r--r-- | example/Alpha_complex/alphaoffreader_for_doc_32.txt | 22 | ||||
-rw-r--r-- | example/Alpha_complex/alphaoffreader_for_doc_60.txt | 27 |
5 files changed, 0 insertions, 215 deletions
diff --git a/example/Alpha_complex/Alpha_complex_from_off.cpp b/example/Alpha_complex/Alpha_complex_from_off.cpp deleted file mode 100644 index d411e90a..00000000 --- a/example/Alpha_complex/Alpha_complex_from_off.cpp +++ /dev/null @@ -1,63 +0,0 @@ -#include <gudhi/Alpha_complex.h> -// to construct a simplex_tree from alpha complex -#include <gudhi/Simplex_tree.h> - -#include <CGAL/Epick_d.h> - -#include <iostream> -#include <string> - -void usage(int nbArgs, char * const progName) { - std::cerr << "Error: Number of arguments (" << nbArgs << ") is not correct\n"; - std::cerr << "Usage: " << progName << " filename.off alpha_square_max_value [ouput_file.txt]\n"; - std::cerr << " i.e.: " << progName << " ../../data/points/alphacomplexdoc.off 60.0\n"; - exit(-1); // ----- >> -} - -int main(int argc, char **argv) { - if ((argc != 3) && (argc != 4)) usage(argc, (argv[0] - 1)); - - std::string off_file_name {argv[1]}; - double alpha_square_max_value {atof(argv[2])}; - - // ---------------------------------------------------------------------------- - // Init of an alpha complex from an OFF file - // ---------------------------------------------------------------------------- - using Kernel = CGAL::Epick_d< CGAL::Dynamic_dimension_tag >; - Gudhi::alpha_complex::Alpha_complex<Kernel> alpha_complex_from_file(off_file_name); - - std::streambuf* streambufffer; - std::ofstream ouput_file_stream; - - if (argc == 4) { - ouput_file_stream.open(std::string(argv[3])); - streambufffer = ouput_file_stream.rdbuf(); - } else { - streambufffer = std::cout.rdbuf(); - } - - Gudhi::Simplex_tree<> simplex; - if (alpha_complex_from_file.create_complex(simplex, alpha_square_max_value)) { - std::ostream output_stream(streambufffer); - - // ---------------------------------------------------------------------------- - // Display information about the alpha complex - // ---------------------------------------------------------------------------- - output_stream << "Alpha complex is of dimension " << simplex.dimension() << - " - " << simplex.num_simplices() << " simplices - " << - simplex.num_vertices() << " vertices." << std::endl; - - output_stream << "Iterator on alpha complex simplices in the filtration order, with [filtration value]:" << - std::endl; - for (auto f_simplex : simplex.filtration_simplex_range()) { - output_stream << " ( "; - for (auto vertex : simplex.simplex_vertex_range(f_simplex)) { - output_stream << vertex << " "; - } - output_stream << ") -> " << "[" << simplex.filtration(f_simplex) << "] "; - output_stream << std::endl; - } - } - ouput_file_stream.close(); - return 0; -} diff --git a/example/Alpha_complex/Alpha_complex_from_points.cpp b/example/Alpha_complex/Alpha_complex_from_points.cpp deleted file mode 100644 index c19f7cc8..00000000 --- a/example/Alpha_complex/Alpha_complex_from_points.cpp +++ /dev/null @@ -1,68 +0,0 @@ -#include <gudhi/Alpha_complex.h> -// to construct a simplex_tree from alpha complex -#include <gudhi/Simplex_tree.h> - -#include <CGAL/Epick_d.h> - -#include <iostream> -#include <string> -#include <vector> -#include <limits> // for numeric limits - -using Kernel = CGAL::Epick_d< CGAL::Dimension_tag<2> >; -using Point = Kernel::Point_d; -using Vector_of_points = std::vector<Point>; - -void usage(int nbArgs, char * const progName) { - std::cerr << "Error: Number of arguments (" << nbArgs << ") is not correct\n"; - std::cerr << "Usage: " << progName << " [alpha_square_max_value]\n"; - std::cerr << " i.e.: " << progName << " 60.0\n"; - exit(-1); // ----- >> -} - -int main(int argc, char **argv) { - if ((argc != 1) && (argc != 2)) usage(argc, (argv[0] - 1)); - - // Delaunay complex if alpha_square_max_value is not given by the user. - double alpha_square_max_value {std::numeric_limits<double>::infinity()}; - if (argc == 2) - alpha_square_max_value = atof(argv[1]); - - // ---------------------------------------------------------------------------- - // Init of a list of points - // ---------------------------------------------------------------------------- - Vector_of_points points; - points.push_back(Point(1.0, 1.0)); - points.push_back(Point(7.0, 0.0)); - points.push_back(Point(4.0, 6.0)); - points.push_back(Point(9.0, 6.0)); - points.push_back(Point(0.0, 14.0)); - points.push_back(Point(2.0, 19.0)); - points.push_back(Point(9.0, 17.0)); - - // ---------------------------------------------------------------------------- - // Init of an alpha complex from the list of points - // ---------------------------------------------------------------------------- - Gudhi::alpha_complex::Alpha_complex<Kernel> alpha_complex_from_points(points); - - Gudhi::Simplex_tree<> simplex; - if (alpha_complex_from_points.create_complex(simplex, alpha_square_max_value)) { - // ---------------------------------------------------------------------------- - // Display information about the alpha complex - // ---------------------------------------------------------------------------- - std::cout << "Alpha complex is of dimension " << simplex.dimension() << - " - " << simplex.num_simplices() << " simplices - " << - simplex.num_vertices() << " vertices." << std::endl; - - std::cout << "Iterator on alpha complex simplices in the filtration order, with [filtration value]:" << std::endl; - for (auto f_simplex : simplex.filtration_simplex_range()) { - std::cout << " ( "; - for (auto vertex : simplex.simplex_vertex_range(f_simplex)) { - std::cout << vertex << " "; - } - std::cout << ") -> " << "[" << simplex.filtration(f_simplex) << "] "; - std::cout << std::endl; - } - } - return 0; -} diff --git a/example/Alpha_complex/CMakeLists.txt b/example/Alpha_complex/CMakeLists.txt deleted file mode 100644 index 2fc62452..00000000 --- a/example/Alpha_complex/CMakeLists.txt +++ /dev/null @@ -1,35 +0,0 @@ -project(Alpha_complex_examples) - -# need CGAL 4.7 -# cmake -DCGAL_DIR=~/workspace/CGAL-4.7 .. -if (NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 4.7.0) - add_executable ( Alpha_complex_example_from_points Alpha_complex_from_points.cpp ) - target_link_libraries(Alpha_complex_example_from_points ${CGAL_LIBRARY}) - add_executable ( Alpha_complex_example_from_off Alpha_complex_from_off.cpp ) - target_link_libraries(Alpha_complex_example_from_off ${CGAL_LIBRARY}) - if (TBB_FOUND) - target_link_libraries(Alpha_complex_example_from_points ${TBB_LIBRARIES}) - target_link_libraries(Alpha_complex_example_from_off ${TBB_LIBRARIES}) - endif() - - add_test(NAME Alpha_complex_example_from_points COMMAND $<TARGET_FILE:Alpha_complex_example_from_points>) - - add_test(NAME Alpha_complex_example_from_off_60 COMMAND $<TARGET_FILE:Alpha_complex_example_from_off> - "${CMAKE_SOURCE_DIR}/data/points/alphacomplexdoc.off" "60.0" "${CMAKE_CURRENT_BINARY_DIR}/alphaoffreader_result_60.txt") - add_test(NAME Alpha_complex_example_from_off_32 COMMAND $<TARGET_FILE:Alpha_complex_example_from_off> - "${CMAKE_SOURCE_DIR}/data/points/alphacomplexdoc.off" "32.0" "${CMAKE_CURRENT_BINARY_DIR}/alphaoffreader_result_32.txt") - if (DIFF_PATH) - # Do not forget to copy test results files in current binary dir - file(COPY "alphaoffreader_for_doc_32.txt" DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/) - file(COPY "alphaoffreader_for_doc_60.txt" DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/) - - add_test(Alpha_complex_example_from_off_60_diff_files ${DIFF_PATH} - ${CMAKE_CURRENT_BINARY_DIR}/alphaoffreader_result_60.txt ${CMAKE_CURRENT_BINARY_DIR}/alphaoffreader_for_doc_60.txt) - add_test(Alpha_complex_example_from_off_32_diff_files ${DIFF_PATH} - ${CMAKE_CURRENT_BINARY_DIR}/alphaoffreader_result_32.txt ${CMAKE_CURRENT_BINARY_DIR}/alphaoffreader_for_doc_32.txt) - endif() - - install(TARGETS Alpha_complex_example_from_points DESTINATION bin) - install(TARGETS Alpha_complex_example_from_off DESTINATION bin) - -endif(NOT CGAL_WITH_EIGEN3_VERSION VERSION_LESS 4.7.0) diff --git a/example/Alpha_complex/alphaoffreader_for_doc_32.txt b/example/Alpha_complex/alphaoffreader_for_doc_32.txt deleted file mode 100644 index 13183e86..00000000 --- a/example/Alpha_complex/alphaoffreader_for_doc_32.txt +++ /dev/null @@ -1,22 +0,0 @@ -Alpha complex is of dimension 2 - 20 simplices - 7 vertices. -Iterator on alpha complex simplices in the filtration order, with [filtration value]: - ( 0 ) -> [0] - ( 1 ) -> [0] - ( 2 ) -> [0] - ( 3 ) -> [0] - ( 4 ) -> [0] - ( 5 ) -> [0] - ( 6 ) -> [0] - ( 3 2 ) -> [6.25] - ( 5 4 ) -> [7.25] - ( 2 0 ) -> [8.5] - ( 1 0 ) -> [9.25] - ( 3 1 ) -> [10] - ( 2 1 ) -> [11.25] - ( 3 2 1 ) -> [12.5] - ( 2 1 0 ) -> [12.9959] - ( 6 5 ) -> [13.25] - ( 4 2 ) -> [20] - ( 6 4 ) -> [22.7367] - ( 6 5 4 ) -> [22.7367] - ( 6 3 ) -> [30.25] diff --git a/example/Alpha_complex/alphaoffreader_for_doc_60.txt b/example/Alpha_complex/alphaoffreader_for_doc_60.txt deleted file mode 100644 index 71f29a00..00000000 --- a/example/Alpha_complex/alphaoffreader_for_doc_60.txt +++ /dev/null @@ -1,27 +0,0 @@ -Alpha complex is of dimension 2 - 25 simplices - 7 vertices. -Iterator on alpha complex simplices in the filtration order, with [filtration value]: - ( 0 ) -> [0] - ( 1 ) -> [0] - ( 2 ) -> [0] - ( 3 ) -> [0] - ( 4 ) -> [0] - ( 5 ) -> [0] - ( 6 ) -> [0] - ( 3 2 ) -> [6.25] - ( 5 4 ) -> [7.25] - ( 2 0 ) -> [8.5] - ( 1 0 ) -> [9.25] - ( 3 1 ) -> [10] - ( 2 1 ) -> [11.25] - ( 3 2 1 ) -> [12.5] - ( 2 1 0 ) -> [12.9959] - ( 6 5 ) -> [13.25] - ( 4 2 ) -> [20] - ( 6 4 ) -> [22.7367] - ( 6 5 4 ) -> [22.7367] - ( 6 3 ) -> [30.25] - ( 6 2 ) -> [36.5] - ( 6 3 2 ) -> [36.5] - ( 6 4 2 ) -> [37.2449] - ( 4 0 ) -> [59.7107] - ( 4 2 0 ) -> [59.7107] |