summaryrefslogtreecommitdiff
path: root/src/Collapse/utilities
diff options
context:
space:
mode:
authorROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-06-25 17:10:36 +0200
committerROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-06-25 17:10:36 +0200
commitb522b330b10d11f0da640b8bba7ee689dea774d7 (patch)
treeb94adbfcb414b86433f2023a633374bfd2142d8d /src/Collapse/utilities
parent2610ce8092a3935e228065884bcbd70d910b40cd (diff)
Remove interface with boost graphs and use boost transform for data from graphs
Diffstat (limited to 'src/Collapse/utilities')
-rw-r--r--src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp9
-rw-r--r--src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp9
2 files changed, 16 insertions, 2 deletions
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 88cd7b54..bd9c0152 100644
--- a/src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp
+++ b/src/Collapse/utilities/distance_matrix_edge_collapse_rips_persistence.cpp
@@ -15,6 +15,7 @@
#include <gudhi/graph_simplicial_complex.h>
#include <boost/program_options.hpp>
+#include <boost/range/adaptor/transformed.hpp>
using Simplex_tree = Gudhi::Simplex_tree<Gudhi::Simplex_tree_options_fast_persistence>;
using Filtration_value = Simplex_tree::Filtration_value;
@@ -90,7 +91,13 @@ int main(int argc, char* argv[]) {
});
// Now we will perform filtered edge collapse to sparsify the edge list edge_t.
- Flag_complex_edge_collapser edge_collapser(proximity_graph);
+ Flag_complex_edge_collapser edge_collapser(
+ boost::adaptors::transform(edges(proximity_graph), [&](auto&&edge){
+ return std::make_tuple(source(edge, proximity_graph),
+ target(edge, proximity_graph),
+ get(Gudhi::edge_filtration_t(), proximity_graph, edge));
+ })
+ );
Simplex_tree stree;
for (Vertex_handle vertex = 0; static_cast<std::size_t>(vertex) < distances.size(); vertex++) {
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 69e83597..4e14d7a8 100644
--- a/src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp
+++ b/src/Collapse/utilities/point_cloud_edge_collapse_rips_persistence.cpp
@@ -16,6 +16,7 @@
#include <gudhi/graph_simplicial_complex.h>
#include <boost/program_options.hpp>
+#include <boost/range/adaptor/transformed.hpp>
#include<utility> // for std::pair
#include<vector>
@@ -77,7 +78,13 @@ int main(int argc, char* argv[]) {
exit(-1);
}
- Flag_complex_edge_collapser edge_collapser(proximity_graph);
+ Flag_complex_edge_collapser edge_collapser(
+ boost::adaptors::transform(edges(proximity_graph), [&](auto&&edge){
+ return std::make_tuple(source(edge, proximity_graph),
+ target(edge, proximity_graph),
+ get(Gudhi::edge_filtration_t(), proximity_graph, edge));
+ })
+ );
Simplex_tree stree;
for (Vertex_handle vertex = 0; static_cast<std::size_t>(vertex) < point_vector.size(); vertex++) {