Wildmeshing Toolkit
Loading...
Searching...
No Matches
EmbedTriangles.hpp
1#pragma once
2
3#include <wmtk/Types.hpp>
4
5#include <array>
6#include <cstdint>
7#include <vector>
8
9namespace wmtk::utils {
10
26
41{
45 std::vector<std::array<uint32_t, 2>> face_groups;
48 std::vector<uint32_t> triangle_group;
49};
50
86void embed_triangles_in_tets(
87 const std::vector<double>& tri_vrt_coord,
88 const std::vector<uint32_t>& triangle_indices,
89 const std::vector<double>& tet_vrt_coord,
90 const std::vector<uint32_t>& tet_indices,
91 std::vector<Vector3r>& v_rational,
92 std::vector<std::array<size_t, 3>>& polygon_faces,
93 std::vector<bool>& polygon_faces_on_input,
94 std::vector<bool>& is_v_on_input,
95 std::vector<std::array<size_t, 4>>& tets_after,
96 std::vector<bool>& tet_face_on_input_surface,
97 const EmbedTrianglesOptions& opts = {},
98 EmbedTrianglesProvenance* provenance = nullptr);
99
100} // namespace wmtk::utils
Options for embed_triangles_in_tets. All checks are off by default.
Definition EmbedTriangles.hpp:15
bool check_surface_provenance
Definition EmbedTriangles.hpp:24
bool check_collinear_input
Report input triangles that are collinear, before handing them to the remesher.
Definition EmbedTriangles.hpp:17
bool check_orientation
Definition EmbedTriangles.hpp:20
Which input triangles each output surface face came from.
Definition EmbedTriangles.hpp:41
std::vector< std::array< uint32_t, 2 > > face_groups
Definition EmbedTriangles.hpp:45
std::vector< uint32_t > triangle_group
Definition EmbedTriangles.hpp:48