Wildmeshing Toolkit
|
#include <SimplicialEmbedding.hpp>
Public Member Functions | |
SimplicialEmbedding (Mesh &mesh, const std::vector< attribute::MeshAttributeHandle > &label_attributes, const int64_t &value, const std::vector< attribute::MeshAttributeHandle > &pass_through_attributes) | |
void | regularize_tags (bool generate_simplicial_embedding=true) |
Regularize tags in mesh. More... | |
Private Attributes | |
Mesh & | m_mesh |
std::vector< attribute::MeshAttributeHandle > | m_label_attributes |
int64_t | m_value |
std::vector< attribute::MeshAttributeHandle > | m_pass_through_attributes |
Definition at line 11 of file SimplicialEmbedding.hpp.
wmtk::components::internal::SimplicialEmbedding::SimplicialEmbedding | ( | Mesh & | mesh, |
const std::vector< attribute::MeshAttributeHandle > & | label_attributes, | ||
const int64_t & | value, | ||
const std::vector< attribute::MeshAttributeHandle > & | pass_through_attributes | ||
) |
Definition at line 42 of file SimplicialEmbedding.cpp.
void wmtk::components::internal::SimplicialEmbedding::regularize_tags | ( | bool | generate_simplicial_embedding = true | ) |
Regularize tags in mesh.
First, it is made sure that tags represent a simplicial complex, i.e., all faces of a tagged simplex are also tagged. Second (optional), split simplices who's faces are tagged but that are not tagged themselves.
Definition at line 53 of file SimplicialEmbedding.cpp.
References wmtk::operations::Operation::add_invariant(), wmtk::SimplexInversionInvariant< T >::after(), wmtk::operations::composite::TetCellSplit::collapse(), wmtk::operations::composite::TriFaceSplit::collapse(), wmtk::Mesh::create_accessor(), wmtk::Edge, wmtk::simplex::faces(), wmtk::simplex::faces_single_dimension_tuples(), wmtk::Mesh::get_all(), wmtk::Mesh::get_attribute_handle(), wmtk::get_primitive_type_from_id(), wmtk::get_primitive_type_id(), wmtk::attribute::MeshAttributeHandle::handle(), wmtk::Mesh::has_attribute(), wmtk::log_and_throw_error(), wmtk::logger(), wmtk::components::internal::TagAttribute::m_accessor, m_label_attributes, m_mesh, m_pass_through_attributes, m_value, wmtk::SchedulerStats::number_of_successful_operations(), wmtk::Mesh::register_attribute(), wmtk::Scheduler::run_operation_on_all(), wmtk::attribute::Accessor< T, MeshType, Dim >::scalar_attribute(), wmtk::operations::EdgeCollapse::set_new_attribute_strategy(), wmtk::operations::EdgeSplit::set_new_attribute_strategy(), wmtk::operations::composite::TetCellSplit::split(), wmtk::operations::composite::TriFaceSplit::split(), wmtk::Tetrahedron, wmtk::Mesh::top_cell_dimension(), wmtk::Mesh::top_simplex_type(), wmtk::Triangle, and wmtk::Vertex.
Referenced by wmtk::components::simplicial_embedding().
|
private |
Definition at line 32 of file SimplicialEmbedding.hpp.
Referenced by regularize_tags().
|
private |
Definition at line 30 of file SimplicialEmbedding.hpp.
Referenced by regularize_tags().
|
private |
Definition at line 35 of file SimplicialEmbedding.hpp.
Referenced by regularize_tags().
|
private |
Definition at line 33 of file SimplicialEmbedding.hpp.
Referenced by regularize_tags().