diff options
Diffstat (limited to 'src/Witness_complex')
-rw-r--r-- | src/Witness_complex/include/gudhi/Strong_witness_complex.h | 13 | ||||
-rw-r--r-- | src/Witness_complex/test/test_simple_witness_complex.cpp | 8 |
2 files changed, 12 insertions, 9 deletions
diff --git a/src/Witness_complex/include/gudhi/Strong_witness_complex.h b/src/Witness_complex/include/gudhi/Strong_witness_complex.h index 3803980b..5f9db5a4 100644 --- a/src/Witness_complex/include/gudhi/Strong_witness_complex.h +++ b/src/Witness_complex/include/gudhi/Strong_witness_complex.h @@ -162,7 +162,8 @@ private: // continue inserting limD-faces of the following simplices typeVectorVertex& vertices = simplex; //'simplex' now will be called vertices while (aw_it != aw.end() && aw_it->second < lim_dist2) { - add_all_faces_of_dimension(limD, vertices, vertices.begin(), aw_it, typeVectorVertex({}), complex); + typeVectorVertex facet = {}; + add_all_faces_of_dimension(limit_dimension, vertices, vertices.begin(), aw_it, facet, complex); vertices.push_back(aw_it->first); aw_it++; } @@ -181,17 +182,17 @@ private: * The landmark pointed by aw_it is added to all formed simplices. */ template < typename SimplicialComplexForWitness > - void add_all_faces_of_dimension(int dim, - std::vector<Landmark_id>& vertices, + void add_all_faces_of_dimension(Landmark_id dim, + typeVectorVertex& vertices, typename typeVectorVertex::iterator curr_it, typename ActiveWitness::iterator aw_it, - std::vector<Landmark_id>& simplex, + typeVectorVertex& simplex, SimplicialComplexForWitness& sc) { if (dim > 0) while (curr_it != vertices.end()) { - simplex.push_back(curr_it->first); - typename ActiveWitness::iterator next_it = curr_it++; + simplex.push_back(*curr_it); + typename typeVectorVertex::iterator next_it = curr_it++; add_all_faces_of_dimension(dim-1, vertices, next_it, diff --git a/src/Witness_complex/test/test_simple_witness_complex.cpp b/src/Witness_complex/test/test_simple_witness_complex.cpp index a0a1b36c..dc7f3175 100644 --- a/src/Witness_complex/test/test_simple_witness_complex.cpp +++ b/src/Witness_complex/test/test_simple_witness_complex.cpp @@ -32,7 +32,7 @@ typedef Gudhi::witness_complex::Strong_witness_complex<Kernel> StrongWitnessComp */ BOOST_AUTO_TEST_CASE(simple_witness_complex) { - Simplex_tree complex, relaxed_complex, strong_relaxed_complex; + Simplex_tree complex, relaxed_complex, strong_relaxed_complex, strong_relaxed_complex2; std::vector<Point_d> witnesses, landmarks; @@ -73,8 +73,10 @@ BOOST_AUTO_TEST_CASE(simple_witness_complex) { witnesses); strong_witness_complex.create_complex(strong_relaxed_complex, 9.1); - + strong_witness_complex.create_complex(strong_relaxed_complex2, 9.1, 2); + std::cout << "strong_relaxed_complex.num_simplices() = " << strong_relaxed_complex.num_simplices() << std::endl; BOOST_CHECK(strong_relaxed_complex.num_simplices() == 239); - + + std::cout << "strong_relaxed_complex2.num_simplices() = " << strong_relaxed_complex2.num_simplices() << std::endl; } |