Wildmeshing Toolkit
Loading...
Searching...
No Matches
TetFaceSwap.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <
wmtk/operations/EdgeCollapse.hpp
>
4
#include <
wmtk/operations/EdgeSplit.hpp
>
5
6
namespace
wmtk::operations::composite
{
7
37
class
TetFaceSwap
:
public
Operation
38
{
39
public
:
40
TetFaceSwap
(
Mesh
& m);
41
42
PrimitiveType
primitive_type
()
const override
{
return
PrimitiveType::Triangle
; }
43
44
inline
EdgeSplit
&
split
() {
return
m_split
; }
45
inline
EdgeCollapse
&
collapse
() {
return
m_collapse
; }
46
47
protected
:
48
std::vector<simplex::Simplex>
unmodified_primitives
(
49
const
simplex::Simplex
& simplex)
const override
;
50
std::vector<simplex::Simplex>
execute
(
const
simplex::Simplex
& simplex)
override
;
51
52
private
:
53
EdgeSplit
m_split
;
54
EdgeCollapse
m_collapse
;
55
};
56
57
}
// namespace wmtk::operations::composite
EdgeCollapse.hpp
EdgeSplit.hpp
wmtk::Mesh
Definition
Mesh.hpp:95
wmtk::operations::EdgeCollapse
Definition
EdgeCollapse.hpp:8
wmtk::operations::EdgeSplit
Definition
EdgeSplit.hpp:9
wmtk::operations::Operation
Definition
Operation.hpp:24
wmtk::operations::composite::TetFaceSwap
A FaceSwap (or a Swap 2-3) performs a swap a face sharing by two tets to an edge split the volume of ...
Definition
TetFaceSwap.hpp:38
wmtk::operations::composite::TetFaceSwap::unmodified_primitives
std::vector< simplex::Simplex > unmodified_primitives(const simplex::Simplex &simplex) const override
Returns all simplices that will be potentially affected by the operation.
Definition
TetFaceSwap.cpp:64
wmtk::operations::composite::TetFaceSwap::primitive_type
PrimitiveType primitive_type() const override
Definition
TetFaceSwap.hpp:42
wmtk::operations::composite::TetFaceSwap::execute
std::vector< simplex::Simplex > execute(const simplex::Simplex &simplex) override
returns an empty vector in case of failure
Definition
TetFaceSwap.cpp:11
wmtk::operations::composite::TetFaceSwap::m_split
EdgeSplit m_split
Definition
TetFaceSwap.hpp:53
wmtk::operations::composite::TetFaceSwap::split
EdgeSplit & split()
Definition
TetFaceSwap.hpp:44
wmtk::operations::composite::TetFaceSwap::collapse
EdgeCollapse & collapse()
Definition
TetFaceSwap.hpp:45
wmtk::operations::composite::TetFaceSwap::m_collapse
EdgeCollapse m_collapse
Definition
TetFaceSwap.hpp:54
wmtk::simplex::Simplex
Definition
Simplex.hpp:22
wmtk::operations::composite
Definition
ProjectOperation.cpp:8
wmtk::PrimitiveType
PrimitiveType
Definition
PrimitiveType.hpp:9
wmtk::PrimitiveType::Triangle
@ Triangle
src
wmtk
operations
composite
TetFaceSwap.hpp
Generated by
1.9.8