|
Wildmeshing Toolkit
|
#include <EdgeOperationData.hpp>
Classes | |
| struct | EarTet |
| An EarTet is a neighbor of a tet to be deleted in the split/collapse operation. More... | |
| struct | FaceCollapseData |
| struct | FaceSplitData |
| struct | IncidentFaceData |
| struct | IncidentTetData |
| Data on the incident tets of the operating edge. More... | |
Public Member Functions | |
| EdgeOperationData ()=default | |
| EdgeOperationData (EdgeOperationData &&)=default | |
| EdgeOperationData & | operator= (EdgeOperationData &&)=default |
| const std::array< int64_t, 2 > & | incident_vids () const |
| int64_t | operating_edge_id () const |
| std::vector< std::array< Tuple, 2 > > | ear_edges (const TetMesh &m) const |
| std::vector< std::array< Tuple, 2 > > | ear_faces (const TetMesh &m) const |
| std::array< Tuple, 2 > | input_endpoints (const TetMesh &m) const |
| std::vector< Tuple > | collapse_merged_ear_edges (const TetMesh &m) const |
| std::vector< Tuple > | collapse_merged_ear_faces (const TetMesh &m) const |
| std::vector< Tuple > | split_new_rib_edges (const TetMesh &) const |
| std::vector< Tuple > | split_new_rib_faces (const TetMesh &) const |
| std::vector< Tuple > | input_tets (const TetMesh &) const |
| std::vector< Tuple > | input_faces (const TetMesh &) const |
| std::array< Tuple, 2 > | split_output_edges (const TetMesh &) const |
| std::vector< std::array< Tuple, 2 > > | split_output_faces (const TetMesh &) const |
| std::vector< std::array< Tuple, 2 > > | split_output_tets (const TetMesh &) const |
| std::vector< IncidentTetData > | incident_tet_datas () const |
| std::vector< IncidentFaceData > | incident_face_datas () const |
| std::vector< simplex::Simplex > | new_vertices (const Mesh &) const |
| std::array< int64_t, 2 > | new_spine_eids () const |
Public Member Functions inherited from wmtk::operations::EdgeOperationData | |
| EdgeOperationData () | |
| ~EdgeOperationData () | |
| EdgeOperationData (EdgeOperationData &&) | |
| EdgeOperationData & | operator= (EdgeOperationData &&) |
| void | set_split () |
| void | set_collapse () |
| const internal::SplitAlternateFacetData & | const_split_facet_data () const |
| Returns facet data held if the edge operation was a split - throws if data does not exist. | |
| const internal::CollapseAlternateFacetData & | const_collapse_facet_data () const |
| Returns facet data held if the edge operation was a collapse- throws if data does not exist. | |
Public Attributes | |
| std::array< std::vector< int64_t >, 4 > | simplex_ids_to_delete |
| std::array< std::vector< Tuple >, 4 > | simplex_tuples_to_delete |
| std::vector< int64_t > | cell_ids_to_update_hash |
| bool | is_collapse = false |
Public Attributes inherited from wmtk::operations::EdgeOperationData | |
| Tuple | m_operating_tuple |
| Tuple | m_output_tuple |
| std::array< int64_t, 2 > | m_spine_vids |
| std::vector< std::vector< Tuple > > | split_boundary_complex |
| std::vector< std::vector< std::tuple< int64_t, std::vector< Tuple > > > > | global_ids_to_potential_tuples |
| std::vector< std::vector< int64_t > > | global_ids_to_update |
| std::variant< std::unique_ptr< internal::SplitAlternateFacetData >, std::unique_ptr< internal::CollapseAlternateFacetData > > | m_op_data |
Protected Attributes | |
| std::array< int64_t, 2 > | m_spine_vids |
| int64_t | m_operating_edge_id |
| int64_t | m_operating_face_id |
| int64_t | m_operating_tet_id |
| int64_t | m_split_new_vid = -1 |
| std::array< int64_t, 2 > | m_split_new_spine_eids |
| std::vector< IncidentTetData > | m_incident_tet_datas |
| std::vector< IncidentFaceData > | m_incident_face_datas |
Additional Inherited Members | |
Protected Member Functions inherited from wmtk::operations::EdgeOperationData | |
| internal::SplitAlternateFacetData & | split_facet_data () |
| Returns facet data held if the edge operation was a split - throws if data does not exist. | |
| internal::CollapseAlternateFacetData & | collapse_facet_data () |
| Returns facet data held if the edge operation was a collapse- throws if data does not exist. | |
Static Protected Member Functions inherited from wmtk::operations::EdgeOperationData | |
| static Tuple | tuple_from_id (const Mesh &m, const PrimitiveType type, const int64_t gid) |
| static simplex::Simplex | simplex_from_id (const Mesh &m, const PrimitiveType type, const int64_t gid) |
| static std::vector< int64_t > | request_simplex_indices (Mesh &mesh, const PrimitiveType type, int64_t count) |
Definition at line 12 of file EdgeOperationData.hpp.
|
default |
|
default |
| std::vector< Tuple > wmtk::operations::tet_mesh::EdgeOperationData::collapse_merged_ear_edges | ( | const TetMesh & | m | ) | const |
Definition at line 47 of file EdgeOperationData.cpp.
References wmtk::Edge, incident_face_datas(), and wmtk::operations::EdgeOperationData::tuple_from_id().
Referenced by wmtk::operations::tet_mesh::CollapseNewAttributeTopoInfo::new_simplices().
| std::vector< Tuple > wmtk::operations::tet_mesh::EdgeOperationData::collapse_merged_ear_faces | ( | const TetMesh & | m | ) | const |
Definition at line 58 of file EdgeOperationData.cpp.
References incident_tet_datas(), wmtk::Triangle, and wmtk::operations::EdgeOperationData::tuple_from_id().
Referenced by wmtk::operations::tet_mesh::CollapseNewAttributeTopoInfo::new_simplices().
| std::vector< std::array< Tuple, 2 > > wmtk::operations::tet_mesh::EdgeOperationData::ear_edges | ( | const TetMesh & | m | ) | const |
Definition at line 9 of file EdgeOperationData.cpp.
References wmtk::Edge, incident_face_datas(), and wmtk::operations::EdgeOperationData::tuple_from_id().
Referenced by wmtk::operations::tet_mesh::SplitNewAttributeTopoInfo::input_ear_simplices(), and wmtk::operations::tet_mesh::CollapseNewAttributeTopoInfo::merged_simplices().
| std::vector< std::array< Tuple, 2 > > wmtk::operations::tet_mesh::EdgeOperationData::ear_faces | ( | const TetMesh & | m | ) | const |
Definition at line 24 of file EdgeOperationData.cpp.
References incident_tet_datas(), wmtk::Triangle, and wmtk::operations::EdgeOperationData::tuple_from_id().
Referenced by wmtk::operations::tet_mesh::SplitNewAttributeTopoInfo::input_ear_simplices(), and wmtk::operations::tet_mesh::CollapseNewAttributeTopoInfo::merged_simplices().
|
inline |
Definition at line 145 of file EdgeOperationData.hpp.
References m_incident_face_datas.
Referenced by collapse_merged_ear_edges(), ear_edges(), input_faces(), wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()(), wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()(), wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()(), split_new_rib_edges(), split_output_faces(), and wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::update_ear_replacement().
|
inline |
Definition at line 144 of file EdgeOperationData.hpp.
References m_incident_tet_datas.
Referenced by collapse_merged_ear_faces(), ear_faces(), input_tets(), wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()(), wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()(), wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()(), wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()(), split_new_rib_faces(), split_output_tets(), and wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::update_ear_replacement().
|
inline |
Definition at line 120 of file EdgeOperationData.hpp.
References m_spine_vids.
Referenced by wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()(), wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()(), and wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()().
| std::array< Tuple, 2 > wmtk::operations::tet_mesh::EdgeOperationData::input_endpoints | ( | const TetMesh & | m | ) | const |
Definition at line 39 of file EdgeOperationData.cpp.
References wmtk::operations::EdgeOperationData::m_operating_tuple, wmtk::TetMesh::switch_tuple(), and wmtk::Vertex.
Referenced by wmtk::operations::tet_mesh::SplitNewAttributeTopoInfo::input_ear_simplices(), and wmtk::operations::tet_mesh::CollapseNewAttributeTopoInfo::merged_simplices().
| std::vector< Tuple > wmtk::operations::tet_mesh::EdgeOperationData::input_faces | ( | const TetMesh & | m | ) | const |
Definition at line 105 of file EdgeOperationData.cpp.
References incident_face_datas().
Referenced by wmtk::operations::tet_mesh::SplitNewAttributeTopoInfo::input_split_simplices().
| std::vector< Tuple > wmtk::operations::tet_mesh::EdgeOperationData::input_tets | ( | const TetMesh & | m | ) | const |
Definition at line 116 of file EdgeOperationData.cpp.
References incident_tet_datas().
Referenced by wmtk::operations::tet_mesh::SplitNewAttributeTopoInfo::input_split_simplices().
|
inline |
Definition at line 148 of file EdgeOperationData.hpp.
References m_split_new_spine_eids.
Referenced by wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()().
| std::vector< simplex::Simplex > wmtk::operations::tet_mesh::EdgeOperationData::new_vertices | ( | const Mesh & | m | ) | const |
Definition at line 68 of file EdgeOperationData.cpp.
References wmtk::Mesh::is_free(), m_split_new_vid, wmtk::operations::EdgeOperationData::simplex_from_id(), and wmtk::Vertex.
|
inline |
Definition at line 122 of file EdgeOperationData.hpp.
References m_operating_edge_id.
|
default |
| std::vector< Tuple > wmtk::operations::tet_mesh::EdgeOperationData::split_new_rib_edges | ( | const TetMesh & | m | ) | const |
Definition at line 83 of file EdgeOperationData.cpp.
References wmtk::Edge, incident_face_datas(), and wmtk::operations::EdgeOperationData::tuple_from_id().
Referenced by wmtk::operations::tet_mesh::SplitNewAttributeTopoInfo::output_rib_simplices().
| std::vector< Tuple > wmtk::operations::tet_mesh::EdgeOperationData::split_new_rib_faces | ( | const TetMesh & | m | ) | const |
Definition at line 94 of file EdgeOperationData.cpp.
References incident_tet_datas(), wmtk::Triangle, and wmtk::operations::EdgeOperationData::tuple_from_id().
Referenced by wmtk::operations::tet_mesh::SplitNewAttributeTopoInfo::output_rib_simplices().
| std::array< Tuple, 2 > wmtk::operations::tet_mesh::EdgeOperationData::split_output_edges | ( | const TetMesh & | m | ) | const |
Definition at line 127 of file EdgeOperationData.cpp.
References wmtk::Edge, m_split_new_spine_eids, and wmtk::operations::EdgeOperationData::tuple_from_id().
Referenced by wmtk::operations::tet_mesh::SplitNewAttributeTopoInfo::output_split_simplices().
| std::vector< std::array< Tuple, 2 > > wmtk::operations::tet_mesh::EdgeOperationData::split_output_faces | ( | const TetMesh & | m | ) | const |
Definition at line 136 of file EdgeOperationData.cpp.
References incident_face_datas(), wmtk::Triangle, and wmtk::operations::EdgeOperationData::tuple_from_id().
Referenced by wmtk::operations::tet_mesh::SplitNewAttributeTopoInfo::output_split_simplices().
| std::vector< std::array< Tuple, 2 > > wmtk::operations::tet_mesh::EdgeOperationData::split_output_tets | ( | const TetMesh & | m | ) | const |
Definition at line 150 of file EdgeOperationData.cpp.
References incident_tet_datas(), wmtk::Tetrahedron, and wmtk::operations::EdgeOperationData::tuple_from_id().
Referenced by wmtk::operations::tet_mesh::SplitNewAttributeTopoInfo::output_split_simplices().
| std::vector<int64_t> wmtk::operations::tet_mesh::EdgeOperationData::cell_ids_to_update_hash |
Definition at line 127 of file EdgeOperationData.hpp.
| bool wmtk::operations::tet_mesh::EdgeOperationData::is_collapse = false |
Definition at line 151 of file EdgeOperationData.hpp.
Referenced by wmtk::operations::utils::UpdateEdgeOperationMultiMeshMapFunctor::operator()().
|
protected |
Definition at line 166 of file EdgeOperationData.hpp.
Referenced by incident_face_datas().
|
protected |
Definition at line 165 of file EdgeOperationData.hpp.
Referenced by incident_tet_datas().
|
protected |
Definition at line 157 of file EdgeOperationData.hpp.
Referenced by operating_edge_id().
|
protected |
Definition at line 158 of file EdgeOperationData.hpp.
|
protected |
Definition at line 159 of file EdgeOperationData.hpp.
|
protected |
Definition at line 156 of file EdgeOperationData.hpp.
Referenced by incident_vids().
|
protected |
Definition at line 162 of file EdgeOperationData.hpp.
Referenced by new_spine_eids(), and split_output_edges().
|
protected |
Definition at line 161 of file EdgeOperationData.hpp.
Referenced by new_vertices().
| std::array<std::vector<int64_t>, 4> wmtk::operations::tet_mesh::EdgeOperationData::simplex_ids_to_delete |
Definition at line 125 of file EdgeOperationData.hpp.
Referenced by wmtk::TetMesh::TetMeshOperationExecutor::delete_simplices().
| std::array<std::vector<Tuple>, 4> wmtk::operations::tet_mesh::EdgeOperationData::simplex_tuples_to_delete |
Definition at line 126 of file EdgeOperationData.hpp.