|
Wildmeshing Toolkit
|
#include <EdgeMeshOperationExecutor.hpp>
Static Public Member Functions | |
| static const std::array< std::vector< int64_t >, 2 > | get_split_simplices_to_delete (const Tuple &tuple, const EdgeMesh &m) |
| gather all simplices that are deleted in a split | |
| static const std::array< std::vector< int64_t >, 2 > | get_collapse_simplices_to_delete (const Tuple &tuple, const EdgeMesh &m) |
| gather all simplices that are deleted in a collapse | |
Public Attributes | |
| std::array< attribute::FlagAccessor< EdgeMesh >, 2 > | flag_accessors |
| attribute::Accessor< int64_t, EdgeMesh > | ee_accessor |
| attribute::Accessor< int64_t, EdgeMesh > | ev_accessor |
| attribute::Accessor< int64_t, EdgeMesh > | ve_accessor |
| EdgeMesh & | m_mesh |
Public Attributes inherited from wmtk::operations::edge_mesh::EdgeOperationData | |
| std::array< std::vector< int64_t >, 2 > | simplex_ids_to_delete |
| std::vector< int64_t > | cell_ids_to_update_hash |
| std::array< int64_t, 2 > | m_split_e = std::array<int64_t, 2>{{-1, -1}} |
| int64_t | m_split_v |
| std::array< int64_t, 2 > | m_free_split_v |
| bool | m_is_self_loop = false |
| std::array< int64_t, 2 > | m_spine_vids |
| std::array< int64_t, 2 > | m_neighbor_eids = {{-1, -1}} |
| int64_t | m_operating_edge_id |
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 |
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 7 of file EdgeMeshOperationExecutor.hpp.
| wmtk::EdgeMesh::EdgeMeshOperationExecutor::EdgeMeshOperationExecutor | ( | EdgeMesh & | m, |
| const Tuple & | operating_tuple | ||
| ) |
Definition at line 7 of file EdgeMeshOperationExecutor.cpp.
References wmtk::Edge, wmtk::Mesh::get_flag_accessor(), and wmtk::Vertex.
| void wmtk::EdgeMesh::EdgeMeshOperationExecutor::collapse_edge | ( | ) |
Definition at line 186 of file EdgeMeshOperationExecutor.cpp.
Referenced by wmtk::operations::utils::MultiMeshEdgeCollapseFunctor::operator()().
| Tuple wmtk::EdgeMesh::EdgeMeshOperationExecutor::collapse_edge_single_mesh | ( | ) |
Definition at line 194 of file EdgeMeshOperationExecutor.cpp.
| void wmtk::EdgeMesh::EdgeMeshOperationExecutor::delete_simplices | ( | ) |
Definition at line 37 of file EdgeMeshOperationExecutor.cpp.
References flag_accessors, and wmtk::operations::edge_mesh::EdgeOperationData::simplex_ids_to_delete.
|
static |
gather all simplices that are deleted in a collapse
The deleted simplices are the vertex and the edge of the input tuple
Definition at line 58 of file EdgeMeshOperationExecutor.cpp.
References wmtk::EdgeMesh::id_edge(), wmtk::EdgeMesh::id_vertex(), wmtk::Mesh::is_free(), wmtk::EdgeMesh::switch_tuple(), and wmtk::Vertex.
|
static |
gather all simplices that are deleted in a split
The deleted simplex is the edge itself
Definition at line 48 of file EdgeMeshOperationExecutor.cpp.
References wmtk::EdgeMesh::id_edge().
|
inline |
Definition at line 40 of file EdgeMeshOperationExecutor.hpp.
References wmtk::operations::edge_mesh::EdgeOperationData::m_spine_vids.
|
inline |
Definition at line 42 of file EdgeMeshOperationExecutor.hpp.
References wmtk::operations::edge_mesh::EdgeOperationData::m_operating_edge_id.
| std::vector< int64_t > wmtk::EdgeMesh::EdgeMeshOperationExecutor::request_simplex_indices | ( | const PrimitiveType | type, |
| int64_t | count | ||
| ) |
Definition at line 256 of file EdgeMeshOperationExecutor.cpp.
| void wmtk::EdgeMesh::EdgeMeshOperationExecutor::split_edge | ( | ) |
Definition at line 72 of file EdgeMeshOperationExecutor.cpp.
Referenced by wmtk::operations::utils::MultiMeshEdgeSplitFunctor::operator()().
| Tuple wmtk::EdgeMesh::EdgeMeshOperationExecutor::split_edge_single_mesh | ( | ) |
Definition at line 79 of file EdgeMeshOperationExecutor.cpp.
References wmtk::Mesh::request_simplex_indices(), and wmtk::Vertex.
| attribute::Accessor<int64_t, EdgeMesh> wmtk::EdgeMesh::EdgeMeshOperationExecutor::ee_accessor |
Definition at line 14 of file EdgeMeshOperationExecutor.hpp.
| attribute::Accessor<int64_t, EdgeMesh> wmtk::EdgeMesh::EdgeMeshOperationExecutor::ev_accessor |
Definition at line 15 of file EdgeMeshOperationExecutor.hpp.
| std::array<attribute::FlagAccessor<EdgeMesh>, 2> wmtk::EdgeMesh::EdgeMeshOperationExecutor::flag_accessors |
Definition at line 13 of file EdgeMeshOperationExecutor.hpp.
Referenced by delete_simplices().
| EdgeMesh& wmtk::EdgeMesh::EdgeMeshOperationExecutor::m_mesh |
Definition at line 51 of file EdgeMeshOperationExecutor.hpp.
| attribute::Accessor<int64_t, EdgeMesh> wmtk::EdgeMesh::EdgeMeshOperationExecutor::ve_accessor |
Definition at line 16 of file EdgeMeshOperationExecutor.hpp.