diff options
author | vrouvrea <vrouvrea@636b058d-ea47-450e-bf9e-a15bfbe3eedb> | 2017-04-10 16:39:02 +0000 |
---|---|---|
committer | vrouvrea <vrouvrea@636b058d-ea47-450e-bf9e-a15bfbe3eedb> | 2017-04-10 16:39:02 +0000 |
commit | d6a275cde67490784f1f7a4362c07a1132672344 (patch) | |
tree | 82dc822e23f276daec84cc09a0fb410c31c40bfe /src/cython/include | |
parent | c536d49278965cd578281ecbec72cea2c8b90cc3 (diff) | |
parent | eb0bd21b93509e8a2cb9485ac46dcba128893538 (diff) |
Merge last trunk modifications
git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/branches/farthest_distance@2329 636b058d-ea47-450e-bf9e-a15bfbe3eedb
Former-commit-id: ba0fbf37ea8108d8c3ca21162d7cb815a92336f7
Diffstat (limited to 'src/cython/include')
-rw-r--r-- | src/cython/include/Simplex_tree_interface.h | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/src/cython/include/Simplex_tree_interface.h b/src/cython/include/Simplex_tree_interface.h index 4266b3ef..45ce1916 100644 --- a/src/cython/include/Simplex_tree_interface.h +++ b/src/cython/include/Simplex_tree_interface.h @@ -52,29 +52,32 @@ class Simplex_tree_interface : public Simplex_tree<SimplexTreeOptions> { return (Base::find(vh) != Base::null_simplex()); } + bool insert(const Simplex& simplex, Filtration_value filtration = 0) { + Insertion_result result = Base::insert_simplex_and_subfaces(simplex, filtration); + return (result.second); + } + + // Do not interface this function, only used in alpha complex interface for complex creation bool insert_simplex(const Simplex& simplex, Filtration_value filtration = 0) { Insertion_result result = Base::insert_simplex(simplex, filtration); - Base::initialize_filtration(); return (result.second); } + // Do not interface this function, only used in interface for complex creation bool insert_simplex_and_subfaces(const Simplex& simplex, Filtration_value filtration = 0) { Insertion_result result = Base::insert_simplex_and_subfaces(simplex, filtration); - Base::initialize_filtration(); return (result.second); } // Do not interface this function, only used in strong witness interface for complex creation bool insert_simplex(const std::vector<std::size_t>& complex, Filtration_value filtration = 0) { Insertion_result result = Base::insert_simplex(complex, filtration); - Base::initialize_filtration(); return (result.second); } // Do not interface this function, only used in strong witness interface for complex creation bool insert_simplex_and_subfaces(const std::vector<std::size_t>& complex, Filtration_value filtration = 0) { Insertion_result result = Base::insert_simplex_and_subfaces(complex, filtration); - Base::initialize_filtration(); return (result.second); } @@ -87,28 +90,29 @@ class Simplex_tree_interface : public Simplex_tree<SimplexTreeOptions> { Base::initialize_filtration(); } - Complex get_filtered_tree() { - Complex filtered_tree; + Complex get_filtration() { + Base::initialize_filtration(); + Complex filtrations; for (auto f_simplex : Base::filtration_simplex_range()) { Simplex simplex; for (auto vertex : Base::simplex_vertex_range(f_simplex)) { simplex.insert(simplex.begin(), vertex); } - filtered_tree.push_back(std::make_pair(simplex, Base::filtration(f_simplex))); + filtrations.push_back(std::make_pair(simplex, Base::filtration(f_simplex))); } - return filtered_tree; + return filtrations; } - Complex get_skeleton_tree(int dimension) { - Complex skeleton_tree; + Complex get_skeleton(int dimension) { + Complex skeletons; for (auto f_simplex : Base::skeleton_simplex_range(dimension)) { Simplex simplex; for (auto vertex : Base::simplex_vertex_range(f_simplex)) { simplex.insert(simplex.begin(), vertex); } - skeleton_tree.push_back(std::make_pair(simplex, Base::filtration(f_simplex))); + skeletons.push_back(std::make_pair(simplex, Base::filtration(f_simplex))); } - return skeleton_tree; + return skeletons; } Complex get_star(const Simplex& simplex) { @@ -140,6 +144,7 @@ class Simplex_tree_interface : public Simplex_tree<SimplexTreeOptions> { } void create_persistence(Gudhi::Persistent_cohomology_interface<Base>* pcoh) { + Base::initialize_filtration(); pcoh = new Gudhi::Persistent_cohomology_interface<Base>(*this); } }; |