Wildmeshing Toolkit
|
#include <catch2/catch_test_macros.hpp>
#include <nlohmann/json.hpp>
#include <tools/DEBUG_EdgeMesh.hpp>
#include <tools/DEBUG_TriMesh.hpp>
#include <tools/EdgeMesh_examples.hpp>
#include <tools/TriMesh_examples.hpp>
#include <wmtk/Scheduler.hpp>
#include <wmtk/Types.hpp>
#include <wmtk/components/input/input.hpp>
#include <wmtk/components/isotropic_remeshing/internal/IsotropicRemeshing.hpp>
#include <wmtk/components/isotropic_remeshing/internal/IsotropicRemeshingOptions.hpp>
#include <wmtk/components/isotropic_remeshing/isotropic_remeshing.hpp>
#include <wmtk/components/output/output.hpp>
#include <wmtk/components/utils/Paths.hpp>
#include <wmtk/invariants/InteriorSimplexInvariant.hpp>
#include <wmtk/invariants/MaxEdgeLengthInvariant.hpp>
#include <wmtk/invariants/MinEdgeLengthInvariant.hpp>
#include <wmtk/invariants/MultiMeshLinkConditionInvariant.hpp>
#include <wmtk/invariants/ValenceImprovementInvariant.hpp>
#include <wmtk/io/Cache.hpp>
#include <wmtk/io/ParaviewWriter.hpp>
#include <wmtk/multimesh/same_simplex_dimension_surjection.hpp>
#include <wmtk/multimesh/utils/extract_child_mesh_from_tag.hpp>
#include <wmtk/multimesh/utils/tuple_map_attribute_io.hpp>
#include <wmtk/operations/AttributesUpdate.hpp>
#include <wmtk/operations/EdgeCollapse.hpp>
#include <wmtk/operations/EdgeSplit.hpp>
#include <wmtk/operations/attribute_new/CollapseNewAttributeStrategy.hpp>
#include <wmtk/operations/attribute_new/SplitNewAttributeStrategy.hpp>
#include <wmtk/operations/composite/TriEdgeSwap.hpp>
#include <wmtk/operations/utils/VertexLaplacianSmooth.hpp>
#include <wmtk/operations/utils/VertexTangentialLaplacianSmooth.hpp>
#include <wmtk/simplex/link.hpp>
#include <wmtk/utils/merkle_tree_diff.hpp>
Go to the source code of this file.
Typedefs | |
using | json = nlohmann::json |
Functions | |
void | print_tuple_map_iso (const DEBUG_TriMesh &parent, const DEBUG_MultiMeshManager &p_mul_manager) |
TEST_CASE ("smoothing_mesh", "[components][isotropic_remeshing][2D]") | |
TEST_CASE ("smoothing_simple_examples", "[components][isotropic_remeshing][2D]") | |
TEST_CASE ("tangential_smoothing", "[components][isotropic_remeshing][2D]") | |
TEST_CASE ("tangential_smoothing_boundary", "[components][isotropic_remeshing][2D]") | |
TEST_CASE ("split_long_edges", "[components][isotropic_remeshing][split][2D]") | |
TEST_CASE ("collapse_short_edges", "[components][isotropic_remeshing][collapse][2D]") | |
TEST_CASE ("swap_edge_for_valence", "[components][isotropic_remeshing][swap][2D]") | |
TEST_CASE ("component_isotropic_remeshing", "[components][isotropic_remeshing][2D]") | |
TEST_CASE ("remeshing_tetrahedron", "[components][isotropic_remeshing][2D]") | |
TEST_CASE ("remeshing_with_boundary", "[components][isotropic_remeshing][2D]") | |
TEST_CASE ("remeshing_preserve_topology", "[components][isotropic_remeshing][2D][.]") | |
TEST_CASE ("remeshing_preserve_topology_realmesh", "[components][isotropic_remeshing][2D][.]") | |
TEST_CASE ("remeshing_realmesh", "[components][isotropic_remeshing][2D][.]") | |
Variables | |
const std::filesystem::path | data_dir = WMTK_DATA_DIR |
using json = nlohmann::json |
Definition at line 38 of file test_component_isotropic_remeshing.cpp.
void print_tuple_map_iso | ( | const DEBUG_TriMesh & | parent, |
const DEBUG_MultiMeshManager & | p_mul_manager | ||
) |
Definition at line 45 of file test_component_isotropic_remeshing.cpp.
References wmtk::multimesh::utils::vectors_to_tuples().
TEST_CASE | ( | "collapse_short_edges" | , |
"" | [components][isotropic_remeshing][collapse][2D] | ||
) |
Definition at line 359 of file test_component_isotropic_remeshing.cpp.
References wmtk::Scheduler::run_operation_on_all().
TEST_CASE | ( | "component_isotropic_remeshing" | , |
"" | [components][isotropic_remeshing][2D] | ||
) |
Definition at line 644 of file test_component_isotropic_remeshing.cpp.
References data_dir.
TEST_CASE | ( | "remeshing_preserve_topology" | , |
"" | [components][isotropic_remeshing][2D][.] | ||
) |
Definition at line 820 of file test_component_isotropic_remeshing.cpp.
References wmtk::Edge, and wmtk::multimesh::utils::extract_and_register_child_mesh_from_tag().
TEST_CASE | ( | "remeshing_preserve_topology_realmesh" | , |
"" | [components][isotropic_remeshing][2D][.] | ||
) |
Definition at line 883 of file test_component_isotropic_remeshing.cpp.
References data_dir, wmtk::Edge, wmtk::multimesh::utils::extract_and_register_child_mesh_from_tag(), wmtk::io::Cache::get_cache_path(), wmtk::io::Cache::read_mesh(), and wmtk::Vertex.
TEST_CASE | ( | "remeshing_realmesh" | , |
"" | [components][isotropic_remeshing][2D][.] | ||
) |
Definition at line 983 of file test_component_isotropic_remeshing.cpp.
References data_dir, wmtk::Mesh::get_attribute_handle(), wmtk::io::Cache::get_cache_path(), wmtk::TriMesh::is_connectivity_valid(), wmtk::io::Cache::read_mesh(), and wmtk::Mesh::serialize().
TEST_CASE | ( | "remeshing_tetrahedron" | , |
"" | [components][isotropic_remeshing][2D] | ||
) |
Definition at line 697 of file test_component_isotropic_remeshing.cpp.
References wmtk::io::Cache::get_cache_path().
TEST_CASE | ( | "remeshing_with_boundary" | , |
"" | [components][isotropic_remeshing][2D] | ||
) |
Definition at line 741 of file test_component_isotropic_remeshing.cpp.
References wmtk::Mesh::get_all(), wmtk::Mesh::get_attribute_handle(), wmtk::io::Cache::get_cache_path(), wmtk::TriMesh::is_boundary_edge(), and wmtk::Mesh::serialize().
TEST_CASE | ( | "smoothing_mesh" | , |
"" | [components][isotropic_remeshing][2D] | ||
) |
Definition at line 61 of file test_component_isotropic_remeshing.cpp.
References data_dir, wmtk::Mesh::get_attribute_handle(), wmtk::io::Cache::get_cache_path(), wmtk::io::Cache::read_mesh(), wmtk::Scheduler::run_operation_on_all(), and wmtk::Mesh::serialize().
TEST_CASE | ( | "smoothing_simple_examples" | , |
"" | [components][isotropic_remeshing][2D] | ||
) |
Definition at line 111 of file test_component_isotropic_remeshing.cpp.
References wmtk::operations::Operation::add_invariant(), wmtk::Scheduler::run_operation_on_all(), and wmtk::operations::AttributesUpdateWithFunction::set_function().
TEST_CASE | ( | "split_long_edges" | , |
"" | [components][isotropic_remeshing][split][2D] | ||
) |
Definition at line 262 of file test_component_isotropic_remeshing.cpp.
References wmtk::attribute::MeshAttributeHandle::as(), and wmtk::Scheduler::run_operation_on_all().
TEST_CASE | ( | "swap_edge_for_valence" | , |
"" | [components][isotropic_remeshing][swap][2D] | ||
) |
Definition at line 559 of file test_component_isotropic_remeshing.cpp.
References wmtk::operations::Operation::add_invariant(), wmtk::operations::composite::TriEdgeSwap::collapse(), wmtk::simplex::Simplex::edge(), wmtk::simplex::link(), wmtk::Scheduler::run_operation_on_all(), wmtk::simplex::SimplexCollection::simplex_vector(), and wmtk::simplex::Simplex::vertex().
TEST_CASE | ( | "tangential_smoothing" | , |
"" | [components][isotropic_remeshing][2D] | ||
) |
Definition at line 178 of file test_component_isotropic_remeshing.cpp.
References wmtk::operations::Operation::add_invariant(), wmtk::Scheduler::run_operation_on_all(), and wmtk::operations::AttributesUpdateWithFunction::set_function().
TEST_CASE | ( | "tangential_smoothing_boundary" | , |
"" | [components][isotropic_remeshing][2D] | ||
) |
Definition at line 221 of file test_component_isotropic_remeshing.cpp.
References wmtk::operations::AttributesUpdateWithFunction::set_function(), and wmtk::simplex::Simplex::vertex().
const std::filesystem::path data_dir = WMTK_DATA_DIR |
Definition at line 43 of file test_component_isotropic_remeshing.cpp.
Referenced by TEST_CASE(), TEST_CASE(), TEST_CASE(), and TEST_CASE().