Wildmeshing Toolkit
Loading...
Searching...
No Matches
TetMeshCutTable.hpp
1
2#pragma once
3
4#include <Eigen/Core>
5#include <array>
6#include <vector>
7
8namespace wmtk {
9
16{
17public:
18 static const std::vector<std::vector<Eigen::Vector4i>>& get_tet_confs(const int idx);
19 static const std::vector<std::vector<Eigen::Vector2i>>& get_diag_confs(const int idx);
20 static const std::vector<std::vector<std::array<bool, 4>>>& get_surface_conf(const int idx);
21 static const std::vector<std::vector<Eigen::Vector4i>>& get_face_id_conf(const int idx);
22 static inline const std::vector<Eigen::Vector4i>& get_tet_conf(const int idx, const int cfg)
23 {
24 return get_tet_confs(idx)[cfg];
25 }
26 static inline const std::vector<std::array<bool, 4>>& get_surface_conf(
27 const int idx,
28 const int cfg)
29 {
30 return get_surface_conf(idx)[cfg];
31 }
32 static inline const std::vector<Eigen::Vector4i>& get_face_id_conf(const int idx, const int cfg)
33 {
34 return get_face_id_conf(idx)[cfg];
35 }
36};
37} // namespace wmtk
This table contains all possible configurations for curring a tetrahedra with a plane....
Definition TetMeshCutTable.hpp:16