The return tuple is the new vertex, pointing to the original vertex.
std::vector< simplex::Simplex > execute(const simplex::Simplex &simplex) override
returns an empty vector in case of failure
EdgeCollapse & collapse()
PrimitiveType primitive_type() const override
std::vector< simplex::Simplex > unmodified_primitives(const simplex::Simplex &simplex) const override
Returns all simplices that will be potentially affected by the operation.