20 const std::vector<Tuple> vertices_t0 =
22 const std::vector<Tuple> vertices_t1 =
24 const Tuple v0 = vertices_t0[0];
25 const Tuple v1 = vertices_t0[1];
26 const Tuple v2 = vertices_t0[2];
27 const Tuple v3 = vertices_t1[2];
29 auto valence = [
this](
const Tuple& v) {
35 int64_t val0 = valence(v0);
36 int64_t val1 = valence(v1);
37 int64_t val2 = valence(v2);
38 int64_t val3 = valence(v3);
53 const int64_t val_before = std::max(
std::abs(val0 - 6),
std::abs(val1 - 6)) +
58 if (val_after >= val_before) {
const Mesh & mesh() const
bool before(const simplex::Simplex &t) const override
ValenceImprovementInvariant(const Mesh &m)
const std::vector< Simplex > & simplex_vector() const
Return const reference to the simplex vector.
static Simplex face(const Mesh &m, const Tuple &t)
const Tuple & tuple() const
static Simplex vertex(const Mesh &m, const Tuple &t)
PrimitiveType primitive_type() const
SimplexCollection link(const Mesh &mesh, const simplex::Simplex &simplex, const bool sort_and_clean)
std::vector< Tuple > faces_single_dimension_tuples(const Mesh &mesh, const Simplex &simplex, const PrimitiveType face_type)
Rational abs(const Rational &r0)