| Wildmeshing Toolkit
    | 
#include <TetCellSplit.hpp>
| Protected Member Functions | |
| std::vector< simplex::Simplex > | execute (const simplex::Simplex &simplex) override | 
| returns an empty vector in case of failure | |
| std::vector< simplex::Simplex > | unmodified_primitives (const simplex::Simplex &simplex) const override | 
| Returns all simplices that will be potentially affected by the operation. | |
|  Protected Member Functions inherited from wmtk::operations::Operation | |
| virtual bool | before (const simplex::Simplex &simplex) const | 
| virtual bool | after (const std::vector< simplex::Simplex > &unmods, const std::vector< simplex::Simplex > &mods) const | 
| void | apply_attribute_transfer (const std::vector< simplex::Simplex > &direct_mods) | 
| Private Attributes | |
| EdgeSplit | m_split | 
| EdgeCollapse | m_collapse | 
| Additional Inherited Members | |
|  Protected Attributes inherited from wmtk::operations::Operation | |
| std::function< double(const simplex::Simplex &)> | m_priority = nullptr | 
| invariants::InvariantCollection | m_invariants | 
| std::vector< std::shared_ptr< const operations::AttributeTransferStrategyBase > > | m_attr_transfer_strategies | 
This class is used to split a tetrahedra into 4 parts, we did this by only using two atomic operations, EdgeSplit and EdgeCollapse in order to make our lib more reliable.
return tuple: the return tuple is the original tuple, arrowing to the new vertex, the face belongs to the original (original_vertex,new vertex,switch_vertex(original_vertex)) the tetrahedra is the most front one.
Definition at line 18 of file TetCellSplit.hpp.
| wmtk::operations::composite::TetCellSplit::TetCellSplit | ( | Mesh & | m | ) | 
Definition at line 8 of file TetCellSplit.cpp.
| 
 | inline | 
Definition at line 26 of file TetCellSplit.hpp.
References m_collapse.
Referenced by wmtk::components::internal::SimplicialEmbedding::regularize_tags().
| 
 | overrideprotectedvirtual | 
returns an empty vector in case of failure
Implements wmtk::operations::Operation.
Definition at line 14 of file TetCellSplit.cpp.
References wmtk::Edge, wmtk::simplex::Simplex::edge(), m_collapse, m_split, wmtk::operations::Operation::mesh(), wmtk::Mesh::switch_tuples(), wmtk::Tetrahedron, wmtk::Triangle, wmtk::simplex::Simplex::tuple(), wmtk::Vertex, and wmtk::simplex::Simplex::vertex().
| 
 | inlineoverridevirtual | 
Implements wmtk::operations::Operation.
Definition at line 23 of file TetCellSplit.hpp.
References wmtk::Tetrahedron.
| 
 | inline | 
Definition at line 25 of file TetCellSplit.hpp.
References m_split.
Referenced by wmtk::components::internal::SimplicialEmbedding::regularize_tags().
| 
 | overrideprotectedvirtual | 
Returns all simplices that will be potentially affected by the operation.
Implements wmtk::operations::Operation.
Definition at line 66 of file TetCellSplit.cpp.
| 
 | private | 
Definition at line 36 of file TetCellSplit.hpp.
Referenced by collapse(), and execute().
| 
 | private | 
Definition at line 35 of file TetCellSplit.hpp.