From d19d6de6de4ef0319a1ec29671e5bb89b23415b7 Mon Sep 17 00:00:00 2001 From: ROUVREAU Vincent Date: Fri, 26 Jun 2020 19:13:55 +0200 Subject: free functions for utils --- .../distance_matrix_edge_collapse_rips_persistence.cpp | 12 +++--------- .../point_cloud_edge_collapse_rips_persistence.cpp | 13 ++++--------- 2 files changed, 7 insertions(+), 18 deletions(-) (limited to 'src/Collapse') diff --git a/src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp b/src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp index 5800e9e8..11ee5871 100644 --- a/src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp +++ b/src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp @@ -21,9 +21,8 @@ using Simplex_tree = Gudhi::Simplex_tree; -using Filtered_edge = Flag_complex_edge_collapser::Filtered_edge; -using Proximity_graph = Gudhi::Proximity_graph; +using Filtered_edge = std::tuple; +using Proximity_graph = Gudhi::Proximity_graph; using Field_Zp = Gudhi::persistent_cohomology::Field_Zp; using Persistent_cohomology = Gudhi::persistent_cohomology::Persistent_cohomology; @@ -63,12 +62,7 @@ int main(int argc, char* argv[]) { std::vector edges_list(edges_from_graph.begin(), edges_from_graph.end()); std::vector remaining_edges; for (int iter = 0; iter < edge_collapse_iter_nb; iter++) { - Flag_complex_edge_collapser edge_collapser(edges_list); - edge_collapser.process_edges( - [&remaining_edges](Vertex_handle u, Vertex_handle v, Filtration_value filtration) { - // insert the edge - remaining_edges.emplace_back(u, v, filtration); - }); + auto remaining_edges = Gudhi::collapse::flag_complex_collapse_edges(edges_list); edges_list = std::move(remaining_edges); remaining_edges.clear(); } diff --git a/src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp b/src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp index 9086152b..0eea742c 100644 --- a/src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp +++ b/src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp @@ -20,6 +20,7 @@ #include // for std::pair #include +#include // Types definition @@ -29,9 +30,8 @@ using Vertex_handle = Simplex_tree::Vertex_handle; using Point = std::vector; using Vector_of_points = std::vector; -using Flag_complex_edge_collapser = Gudhi::collapse::Flag_complex_edge_collapser; -using Filtered_edge = Flag_complex_edge_collapser::Filtered_edge; -using Proximity_graph = Gudhi::Proximity_graph; +using Filtered_edge = std::tuple; +using Proximity_graph = Gudhi::Proximity_graph; using Field_Zp = Gudhi::persistent_cohomology::Field_Zp; using Persistent_cohomology = Gudhi::persistent_cohomology::Persistent_cohomology; @@ -90,12 +90,7 @@ int main(int argc, char* argv[]) { std::vector remaining_edges; for (int iter = 0; iter < edge_collapse_iter_nb; iter++) { - Flag_complex_edge_collapser edge_collapser(edges_list); - edge_collapser.process_edges( - [&remaining_edges](Vertex_handle u, Vertex_handle v, Filtration_value filtration) { - // insert the edge - remaining_edges.emplace_back(u, v, filtration); - }); + auto remaining_edges = Gudhi::collapse::flag_complex_collapse_edges(edges_list); edges_list = std::move(remaining_edges); remaining_edges.clear(); } -- cgit v1.2.3