Wildmeshing Toolkit
multi_mesh_edge_collapse.hpp
Go to the documentation of this file.
1 #pragma once
2 #include <memory>
3 #include <wmtk/EdgeMesh.hpp>
4 #include <wmtk/PointMesh.hpp>
5 #include <wmtk/TetMesh.hpp>
6 #include <wmtk/TriMesh.hpp>
9 
10 namespace wmtk {
11 class Mesh;
12 class Tuple;
13 
14 namespace invariants {
15 class InvariantCollection;
16 }
17 namespace attribute::update_strategies {
18 class UpdateStrategyCollection;
19 }
20 namespace operations {
21 class NewAttributeStrategy;
22 }
23 namespace operations::utils {
24 
25 
26 // Initializes any invariants for collapseting (which is None by default, but enabling a pattern
27 // with other operations)
28 // TODO: it seems like this is never used?
29 std::shared_ptr<invariants::InvariantCollection> multimesh_edge_collapse_invariants(const Mesh& m);
30 
31 
33 
35  Mesh& mesh,
36  const Tuple& t,
37  const std::vector<std::shared_ptr<const operations::BaseCollapseNewAttributeStrategy>>&
38  new_attr_strategies);
39 
40 
41 std::vector<simplex::Simplex> multi_mesh_edge_collapse_with_modified_simplices(
42  Mesh& mesh,
43  const simplex::Simplex& simplex,
44  const std::vector<std::shared_ptr<const operations::BaseCollapseNewAttributeStrategy>>&
45  new_attr_strategies);
46 
47 } // namespace operations::utils
48 } // namespace wmtk
wmtk::utils::metaprogramming::ReferenceWrappedFunctorReturnCacheCustomComparator< wmtk::operations::utils::MultiMeshEdgeCollapseFunctor, wmtk::utils::metaprogramming::MeshVariantTraits, wmtk::simplex::utils::MeshSimplexComparator, simplex::NavigatableSimplex > CollapseReturnData
std::shared_ptr< invariants::InvariantCollection > multimesh_edge_collapse_invariants(const Mesh &m)
wmtk::multimesh::operations::CollapseReturnData CollapseReturnData
std::vector< simplex::Simplex > multi_mesh_edge_collapse_with_modified_simplices(Mesh &mesh, const simplex::Simplex &simplex, const std::vector< std::shared_ptr< const operations::BaseCollapseNewAttributeStrategy >> &new_attr_strategies)
CollapseReturnData multi_mesh_edge_collapse(Mesh &mesh, const simplex::NavigatableSimplex &t, const std::vector< std::shared_ptr< const operations::BaseCollapseNewAttributeStrategy >> &new_attr_strategies)
Definition: Accessor.hpp:6