Wildmeshing Toolkit
find_local_dart_action.cpp
Go to the documentation of this file.
1 
3 
4 #include <cassert>
5 #include <optional>
6 #include <stdexcept>
10 #include "local_switch_tuple.hpp"
11 namespace wmtk::multimesh::utils {
12 int8_t find_local_dart_action(PrimitiveType pt, const Tuple& source, const Tuple& target)
13 {
15  return find_local_dart_action(sd, source, target);
16 }
19  const Tuple& source,
20  const Tuple& target)
21 {
22  // target = R * source
23  // target * source^{-1} = R
24  int8_t src = sd.valid_index_from_tuple(source);
25  int8_t tgt = sd.valid_index_from_tuple(target);
26  return wmtk::autogen::find_local_dart_action(sd, src, tgt);
27 }
30  const wmtk::autogen::Dart& source,
31  const wmtk::autogen::Dart& target)
32 {
34  sd,
35  source.local_orientation(),
36  target.local_orientation());
37 }
38 
39 } // namespace wmtk::multimesh::utils
int8_t & local_orientation()
Definition: Dart.hpp:18
int8_t valid_index_from_tuple(const wmtk::Tuple &t) const
int8_t find_local_dart_action(const SimplexDart &sd, int8_t source, int8_t target)
int8_t find_local_dart_action(PrimitiveType pt, const Tuple &source, const Tuple &target)