Wildmeshing Toolkit
|
#include <Simplex.hpp>
Public Member Functions | |
Simplex (const PrimitiveType &ptype, const Tuple &t) | |
Simplex ()=default | |
Simplex (const Mesh &m, const PrimitiveType &ptype, const Tuple &t) | |
Simplex (const Simplex &)=default | |
Simplex (Simplex &&)=default | |
Simplex & | operator= (const Simplex &)=default |
Simplex & | operator= (Simplex &&)=default |
PrimitiveType | primitive_type () const |
int64_t | dimension () const |
const Tuple & | tuple () const |
Static Public Member Functions | |
static Simplex | vertex (const Mesh &m, const Tuple &t) |
static Simplex | edge (const Mesh &m, const Tuple &t) |
static Simplex | face (const Mesh &m, const Tuple &t) |
static Simplex | tetrahedron (const Mesh &m, const Tuple &t) |
static Simplex | vertex (const Tuple &t) |
static Simplex | edge (const Tuple &t) |
static Simplex | face (const Tuple &t) |
static Simplex | tetrahedron (const Tuple &t) |
Private Attributes | |
PrimitiveType | m_primitive_type |
Tuple | m_tuple |
Friends | |
class | wmtk::Mesh |
class | multimesh::MultiMeshManager |
template<typename Derived > | |
class | wmtk::MeshCRTP |
template<typename T , typename MeshType , int Dim> | |
class | attribute::Accessor |
class | NavigatableSimplex |
Definition at line 21 of file Simplex.hpp.
|
inline |
Definition at line 36 of file Simplex.hpp.
|
default |
Referenced by edge(), face(), tetrahedron(), and vertex().
wmtk::simplex::Simplex::Simplex | ( | const Mesh & | m, |
const PrimitiveType & | ptype, | ||
const Tuple & | t | ||
) |
Definition at line 7 of file Simplex.cpp.
|
default |
|
default |
|
inline |
Definition at line 52 of file Simplex.hpp.
References wmtk::get_primitive_type_id(), and m_primitive_type.
Definition at line 61 of file Simplex.hpp.
References wmtk::Edge, and Simplex().
Referenced by wmtk::components::TagIntersection::compute_intersection(), wmtk::components::internal::edge_insertion(), wmtk::operations::composite::TetCellSplit::execute(), wmtk::operations::composite::TetEdgeSwap::execute(), wmtk::operations::composite::TetFaceSwap::execute(), wmtk::operations::composite::TriEdgeSwap::execute(), wmtk::operations::composite::TriFaceSplit::execute(), wmtk::TriMesh::TriMeshOperationExecutor::get_incident_face_data(), wmtk::TetMesh::TetMeshOperationExecutor::get_split_simplices_to_delete(), wmtk::TriMesh::TriMeshOperationExecutor::get_split_simplices_to_delete(), wmtk::TetMesh::is_boundary_edge(), wmtk::simplex::link(), wmtk::simplex::link_condition_closed_tetmesh(), wmtk::simplex::link_condition_closed_trimesh(), wmtk::simplex::link_single_dimension(), wmtk::simplex::open_star(), wmtk::TetMesh::TetMeshOperationExecutor::split_edge(), wmtk::TriMesh::TriMeshOperationExecutor::split_edge_precompute(), TEST_CASE(), and wmtk::components::triangle_insertion::triangle_insertion().
Definition at line 74 of file Simplex.hpp.
References wmtk::Edge, and Simplex().
Definition at line 63 of file Simplex.hpp.
References Simplex(), and wmtk::Triangle.
Referenced by wmtk::invariants::ValenceImprovementInvariant::before(), wmtk::components::TagIntersection::compute_intersection(), wmtk::components::internal::edge_insertion(), wmtk::operations::composite::TetEdgeSwap::execute(), wmtk::invariants::MinIncidentValenceInvariant::is_greater_min_valence(), wmtk::simplex::link(), wmtk::simplex::link_single_dimension(), wmtk::simplex::open_star(), and wmtk::TetMesh::TetMeshOperationExecutor::split_edge().
Definition at line 75 of file Simplex.hpp.
References Simplex(), and wmtk::Triangle.
|
inline |
Definition at line 51 of file Simplex.hpp.
References m_primitive_type.
Referenced by wmtk::simplex::TopDimensionCofacesIterable::Iterator::add_neighbors_to_queue(), wmtk::invariants::TetMeshSubstructureTopologyPreservingInvariant::before(), wmtk::invariants::TriMeshSubstructureTopologyPreservingInvariant::before(), wmtk::invariants::SeparateSubstructuresInvariant::before(), wmtk::invariants::uvEdgeInvariant::before(), wmtk::invariants::EdgeValenceInvariant::before(), wmtk::EnergyFilterInvariant::before(), wmtk::invariants::FrozenOppVertexInvariant::before(), wmtk::invariants::InvariantCollection::before(), wmtk::invariants::MinIncidentValenceInvariant::before(), wmtk::invariants::MultiMeshLinkConditionInvariant::before(), wmtk::MultiMeshMapValidInvariant::before(), wmtk::invariants::NoBoundaryCollapseToInteriorInvariant::before(), wmtk::invariants::NoChildMeshAttachingInvariant::before(), wmtk::TodoInvariant::before(), wmtk::TodoLargerInvariant::before(), wmtk::TodoSmallerInvariant::before(), wmtk::invariants::ValenceImprovementInvariant::before(), wmtk::simplex::boundary(), wmtk::simplex::boundary_tuples(), wmtk::simplex::internal::boundary_with_preserved_face_simplices(), wmtk::simplex::internal::boundary_with_preserved_face_tuples(), wmtk::multimesh::MultiMeshManager::can_map(), wmtk::multimesh::MultiMeshManager::can_map_child(), wmtk::simplex::cofaces_single_dimension_tuples(), wmtk::simplex::CofacesSingleDimensionIterable::CofacesSingleDimensionIterable(), wmtk::simplex::ClosedStarIterable::Iterator::depth(), wmtk::simplex::CofacesSingleDimensionIterable::Iterator::depth(), wmtk::simplex::LinkIterable::Iterator::depth(), wmtk::simplex::LinkSingleDimensionIterable::Iterator::depth(), wmtk::simplex::OpenStarIterable::Iterator::depth(), wmtk::simplex::TopDimensionCofacesIterable::Iterator::depth(), wmtk::simplex::edges(), wmtk::simplex::utils::SimplexComparisons::equal(), wmtk::function::TriangleAMIPS::eval(), wmtk::operations::AttributesUpdate::execute(), wmtk::operations::Rounding::execute(), wmtk::simplex::faces(), wmtk::simplex::faces_single_dimension(), wmtk::simplex::faces_single_dimension_tuples(), wmtk::multimesh::MultiMeshManager::find_valid_tuple_from_split(), wmtk::function::AMIPS::get_gradient(), wmtk::function::LocalNeighborsSumFunction::get_gradient(), wmtk::function::AMIPS::get_hessian(), wmtk::function::LocalNeighborsSumFunction::get_hessian(), wmtk::Mesh::get_id_simplex(), wmtk::operations::AttributeTransferStrategyBase::get_parent_simplices(), wmtk::function::utils::get_simplex_attributes(), wmtk::function::AMIPS::get_value(), wmtk::function::LocalNeighborsSumFunction::get_value(), wmtk::attribute::Accessor< T, MeshType, Dim >::index(), wmtk::multimesh::BoundaryChecker::is_boundary(), wmtk::Mesh::is_boundary(), wmtk::components::TagAttribute::is_tagged(), wmtk::Mesh::is_valid(), wmtk::simplex::ClosedStarIterable::Iterator::Iterator(), wmtk::simplex::CofacesInSimplexIterable::Iterator::Iterator(), wmtk::simplex::LinkIterable::Iterator::Iterator(), wmtk::simplex::LinkSingleDimensionIterable::Iterator::Iterator(), wmtk::simplex::utils::SimplexComparisons::less(), wmtk::simplex::link(), wmtk::simplex::link_single_dimension(), wmtk::multimesh::MultiMeshManager::lub_map(), wmtk::multimesh::MultiMeshManager::lub_map_tuples(), wmtk::multimesh::MultiMeshManager::map(), wmtk::multimesh::MultiMeshManager::map_down_relative_tuples(), wmtk::multimesh::MultiMeshManager::map_to_child(), wmtk::multimesh::MultiMeshManager::map_to_child_tuples(), wmtk::multimesh::MultiMeshManager::map_to_parent(), wmtk::multimesh::MultiMeshManager::map_to_root(), wmtk::multimesh::MultiMeshManager::map_tuples(), wmtk::multimesh::MultiMeshManager::map_up_to_tuples(), wmtk::simplex::ClosedStarIterable::Iterator::navigate_to_link(), wmtk::simplex::LinkIterable::Iterator::navigate_to_link(), wmtk::simplex::LinkSingleDimensionIterable::Iterator::navigate_to_link(), wmtk::simplex::neighbors_single_dimension_tuples(), wmtk::simplex::open_star(), wmtk::operations::Operation::operator()(), wmtk::simplex::CofacesInSimplexIterable::Iterator::operator++(), wmtk::simplex::LinkIterable::Iterator::operator++(), wmtk::simplex::OpenStarIterable::Iterator::operator++(), wmtk::operations::SingleAttributeTransferStrategy< MyType, ParentType >::run(), wmtk::components::TagAttribute::set_tag(), wmtk::simplex::ClosedStarIterable::Iterator::step_depth_3(), wmtk::simplex::OpenStarIterable::Iterator::step_depth_3(), wmtk::simplex::ClosedStarIterable::Iterator::step_tet_mesh(), wmtk::simplex::ClosedStarIterable::Iterator::step_tri_mesh(), wmtk::simplex::top_dimension_cofaces_tuples(), and wmtk::simplex::vertices().
Definition at line 68 of file Simplex.hpp.
References Simplex(), and wmtk::Tetrahedron.
Referenced by wmtk::components::TagIntersection::compute_intersection(), wmtk::simplex::open_star(), and wmtk::TetMesh::TetMeshOperationExecutor::split_edge().
Definition at line 76 of file Simplex.hpp.
References Simplex(), and wmtk::Tetrahedron.
|
inline |
Definition at line 53 of file Simplex.hpp.
References m_tuple.
Referenced by wmtk::invariants::TetMeshSubstructureTopologyPreservingInvariant::before(), wmtk::invariants::TriMeshSubstructureTopologyPreservingInvariant::before(), wmtk::invariants::CollapseEnergyBeforeInvariant::before(), wmtk::invariants::CollapseEnergyBeforeInvariantDouble::before(), wmtk::invariants::CollapseSoftEnergyBeforeInvariant::before(), wmtk::invariants::FusionEdgeInvariant::before(), wmtk::invariants::SeparateSubstructuresInvariant::before(), wmtk::invariants::uvEdgeInvariant::before(), wmtk::operations::Operation::before(), wmtk::invariants::MaxFunctionInvariant::before(), wmtk::invariants::EdgeValenceInvariant::before(), wmtk::EnergyFilterInvariant::before(), wmtk::invariants::FrozenVertexInvariant::before(), wmtk::invariants::FrozenOppVertexInvariant::before(), wmtk::invariants::InteriorSimplexInvariant::before(), wmtk::MaxEdgeLengthInvariant::before(), wmtk::invariants::MinEdgeLengthInvariant::before(), wmtk::invariants::MinIncidentValenceInvariant::before(), wmtk::MultiMeshEdgeTopologyInvariant::before(), wmtk::invariants::NoBoundaryCollapseToInteriorInvariant::before(), wmtk::invariants::NoChildMeshAttachingInvariant::before(), wmtk::RoundedInvariant::before(), wmtk::Swap23EnergyBeforeInvariant::before(), wmtk::Swap2dEdgeLengthInvariant::before(), wmtk::Swap2dUnroundedVertexInvariant::before(), wmtk::Swap32EnergyBeforeInvariant::before(), wmtk::Swap32EnergyBeforeInvariantDouble::before(), wmtk::Swap44EnergyBeforeInvariant::before(), wmtk::Swap44EnergyBeforeInvariantDouble::before(), wmtk::Swap56EnergyBeforeInvariant::before(), wmtk::Swap56EnergyBeforeInvariantDouble::before(), wmtk::invariants::ValenceImprovementInvariant::before(), wmtk::simplex::ClosedStarIterable::begin(), wmtk::simplex::CofacesSingleDimensionIterable::begin(), wmtk::simplex::LinkIterable::begin(), wmtk::simplex::LinkSingleDimensionIterable::begin(), wmtk::simplex::OpenStarIterable::begin(), wmtk::simplex::TopDimensionCofacesIterable::begin(), wmtk::simplex::CofacesInSimplexIterable::begin(), wmtk::simplex::boundary_tuples(), wmtk::simplex::internal::boundary_with_preserved_face_simplices(), wmtk::simplex::internal::boundary_with_preserved_face_tuples(), wmtk::simplex::closed_star(), wmtk::simplex::cofaces_single_dimension_tuples(), wmtk::simplex::edges(), wmtk::operations::AMIPSOptimizationSmoothing::execute(), wmtk::operations::AMIPSOptimizationSmoothingPeriodic::execute(), wmtk::operations::AttributesUpdate::execute(), wmtk::operations::composite::TetCellSplit::execute(), wmtk::operations::composite::TetFaceSwap::execute(), wmtk::operations::composite::TriFaceSplit::execute(), wmtk::operations::OptimizationSmoothing::execute(), wmtk::operations::Rounding::execute(), wmtk::operations::TetWildTangentialLaplacianSmoothing::execute(), wmtk::multimesh::MultiMeshSimplexVisitor< cell_dimension_, NodeFunctor_ >::execute_from_root(), wmtk::simplex::faces(), wmtk::multimesh::MultiMeshManager::find_valid_tuple_from_split(), wmtk::function::PerSimplexAutodiffFunction::get_coordinates(), wmtk::Mesh::get_id_simplex(), wmtk::function::AMIPS::get_raw_coordinates(), wmtk::function::utils::get_simplex_attributes(), wmtk::function::EdgeValenceEnergy::get_value(), wmtk::attribute::Accessor< T, MeshType, Dim >::index(), wmtk::Mesh::is_boundary(), wmtk::components::TagAttribute::is_tagged(), wmtk::Mesh::is_valid(), wmtk::multimesh::MultiMeshManager::lub_map_tuples(), wmtk::multimesh::MultiMeshManager::map_down_relative_tuples(), wmtk::multimesh::MultiMeshManager::map_to_parent(), wmtk::multimesh::MultiMeshManager::map_to_parent_tuple(), wmtk::multimesh::MultiMeshManager::map_to_root_tuple(), wmtk::multimesh::MultiMeshManager::map_up_to_tuples(), wmtk::simplex::neighbors_single_dimension_tuples(), wmtk::operations::utils::MultiMeshEdgeCollapseFunctor::operator()(), wmtk::operations::utils::MultiMeshEdgeSplitFunctor::operator()(), wmtk::operations::VertexLaplacianSmooth::operator()(), wmtk::operations::VertexTangentialLaplacianSmooth::operator()(), wmtk::simplex::CofacesInSimplexIterable::Iterator::operator++(), wmtk::simplex::RawSimplex::RawSimplex(), wmtk::operations::SingleAttributeTransferStrategy< MyType, ParentType >::run(), wmtk::components::TagAttribute::set_tag(), wmtk::simplex::TopDimensionCofacesIterable::Iterator::step_depth_2(), wmtk::simplex::top_dimension_cofaces_tuples(), wmtk::operations::EdgeCollapse::unmodified_primitives(), wmtk::multimesh::MultiMeshManager::update_map_tuple_hashes(), and wmtk::simplex::vertices().
Definition at line 56 of file Simplex.hpp.
References Simplex(), and wmtk::Vertex.
Referenced by wmtk::components::internal::adjust_sizing_field(), wmtk::components::adjust_sizing_field(), wmtk::invariants::CollapseEnergyBeforeInvariant::before(), wmtk::invariants::CollapseEnergyBeforeInvariantDouble::before(), wmtk::invariants::CollapseSoftEnergyBeforeInvariant::before(), wmtk::invariants::FusionEdgeInvariant::before(), wmtk::invariants::SeparateSubstructuresInvariant::before(), wmtk::invariants::uvEdgeInvariant::before(), wmtk::invariants::FrozenVertexInvariant::before(), wmtk::invariants::FrozenOppVertexInvariant::before(), wmtk::invariants::NoChildMeshAttachingInvariant::before(), wmtk::invariants::ValenceImprovementInvariant::before(), wmtk::TetMesh::TetMeshOperationExecutor::collapse_edge(), wmtk::components::TagIntersection::compute_intersection(), wmtk::mesh_utils::compute_vertex_normal(), wmtk::operations::composite::TetCellSplit::execute(), wmtk::operations::composite::TetEdgeSwap::execute(), wmtk::operations::composite::TriFaceSplit::execute(), wmtk::TriMesh::TriMeshOperationExecutor::get_incident_face_data(), wmtk::function::EdgeValenceEnergy::get_value(), wmtk::TetMesh::is_boundary_vertex(), wmtk::invariants::MinIncidentValenceInvariant::is_greater_min_valence(), wmtk::simplex::link(), wmtk::simplex::link_condition_closed_tetmesh(), wmtk::simplex::link_condition_closed_trimesh(), wmtk::simplex::link_single_dimension(), wmtk::operations::utils::multi_mesh_edge_collapse_with_modified_simplices(), wmtk::Scheduler::run_operation_on_all_coloring(), wmtk::components::internal::set_operation_energy_filter(), wmtk::components::set_operation_energy_filter(), wmtk::components::internal::set_operation_energy_filter_after_sizing_field(), wmtk::components::set_operation_energy_filter_after_sizing_field(), wmtk::TetMesh::TetMeshOperationExecutor::split_edge(), TEST_CASE(), wmtk::components::triangle_insertion::triangle_insertion(), wmtk::operations::EdgeCollapse::unmodified_primitives(), and wmtk::components::internal::wildmeshing2d().
Definition at line 73 of file Simplex.hpp.
References Simplex(), and wmtk::Vertex.
|
friend |
Definition at line 28 of file Simplex.hpp.
|
friend |
Definition at line 24 of file Simplex.hpp.
|
friend |
Definition at line 30 of file Simplex.hpp.
|
friend |
Definition at line 23 of file Simplex.hpp.
|
friend |
Definition at line 26 of file Simplex.hpp.
|
private |
Definition at line 31 of file Simplex.hpp.
Referenced by dimension(), and primitive_type().
|
private |
Definition at line 32 of file Simplex.hpp.
Referenced by tuple().