Wildmeshing Toolkit
|
#include <EnvelopeInvariant.hpp>
Public Member Functions | |
EnvelopeInvariant (const attribute::MeshAttributeHandle &envelope_mesh_coordinate, double envelope_size, const attribute::MeshAttributeHandle &coordinate) | |
bool | after (const std::vector< Tuple > &top_dimension_tuples_before, const std::vector< Tuple > &top_dimension_tuples_after) const override |
Public Member Functions inherited from wmtk::invariants::Invariant | |
virtual bool | before (const simplex::Simplex &t) const |
Invariant (const Mesh &m) | |
Invariant (const Mesh &m, bool use_before, bool use_old_state_in_after, bool use_new_state_in_after) | |
virtual | ~Invariant () |
const Mesh & | mesh () const |
virtual bool | directly_modified_after (const std::vector< simplex::Simplex > &simplices_before, const std::vector< simplex::Simplex > &simplices_after) const |
bool | use_before () const |
bool | use_after () const |
bool | use_old_state_in_after () const |
bool | use_new_state_in_after () const |
Private Attributes | |
std::shared_ptr< fastEnvelope::FastEnvelope > | m_envelope = nullptr |
std::shared_ptr< SimpleBVH::BVH > | m_bvh = nullptr |
const attribute::MeshAttributeHandle | m_coordinate_handle |
const double | m_envelope_size |
Definition at line 19 of file EnvelopeInvariant.hpp.
wmtk::invariants::EnvelopeInvariant::EnvelopeInvariant | ( | const attribute::MeshAttributeHandle & | envelope_mesh_coordinate, |
double | envelope_size, | ||
const attribute::MeshAttributeHandle & | coordinate | ||
) |
Definition at line 29 of file EnvelopeInvariant.cpp.
References wmtk::attribute::MeshAttributeHandle::as(), wmtk::attribute::Accessor< T, MeshType, Dim >::const_vector_attribute(), wmtk::attribute::Accessor< T, MeshType, Dim >::dimension(), wmtk::Edge, wmtk::simplex::edges(), wmtk::simplex::faces(), wmtk::attribute::MeshAttributeHandle::holds(), wmtk::logger(), m_bvh, m_envelope, wmtk::attribute::MeshAttributeHandle::mesh(), wmtk::PV, wmtk::Triangle, and wmtk::simplex::vertices().
|
overridevirtual |
Reimplemented from wmtk::invariants::Invariant.
Definition at line 169 of file EnvelopeInvariant.cpp.
References wmtk::attribute::MeshAttributeHandle::as(), wmtk::attribute::Accessor< T, MeshType, Dim >::const_vector_attribute(), wmtk::Mesh::create_const_accessor(), wmtk::attribute::Accessor< T, MeshType, Dim >::dimension(), wmtk::Edge, wmtk::simplex::faces(), wmtk::simplex::faces_single_dimension_tuples(), wmtk::attribute::MeshAttributeHandle::holds(), wmtk::logger(), m_bvh, m_coordinate_handle, m_envelope, m_envelope_size, wmtk::invariants::Invariant::mesh(), wmtk::PV, wmtk::Mesh::switch_tuple(), wmtk::Mesh::top_simplex_type(), wmtk::Triangle, and wmtk::Vertex.
|
private |
Definition at line 33 of file EnvelopeInvariant.hpp.
Referenced by after(), and EnvelopeInvariant().
|
private |
Definition at line 34 of file EnvelopeInvariant.hpp.
Referenced by after().
|
private |
Definition at line 32 of file EnvelopeInvariant.hpp.
Referenced by after(), and EnvelopeInvariant().
|
private |
Definition at line 36 of file EnvelopeInvariant.hpp.
Referenced by after().