Wildmeshing Toolkit
SplitNewValueApplicator.hpp
Go to the documentation of this file.
1 
2 #include <array>
3 #include <vector>
6 {
7 private:
8  // the edge that was collapsed upon
9  Tuple split_edge(const ReturnData& ret_data, const Tuple& input_tuple) const;
10 
11  // the simplices at the boundary of the pairs of simplices that were split
12  // vertex should return 0
13  // edge should return 2
14  std::vector<Tuple> new_spine_simplices(
15  const ReturnData& ret_data,
16  const Tuple& output_tuple,
17  PrimitiveType pt) const;
18 
19 
20  // the sipmlices that were split from one
21  // vertex should return 1
22  std::vector<std::array<Tuple, 2>> new_rib_simplices(
23  const ReturnData& ret_data,
24  const Tuple& output_tuple,
25  PrimitiveType pt) const;
26 
27  // the simplices that were split in half
28  // vertex should return 0
29  // edge should return 1 (the input edge)
30  std::vector<Tuple> split_rib_simplices(
31  const ReturnData& ret_data,
32  const Tuple& input_tuple,
33  PrimitiveType pt) const;
34 
35 
36  // set of faces whose one ring were modified
37  // SHOULD be safe to resurrect to a previous state
38  std::vector<Tuple> output_modified_simplices(
39  const ReturnData& ret_data,
40  const Tuple& output_tuple,
41  const PrimitiveType pt) const;
42 
43 
44  // the top dimension that were removed in the operation
45  // not necessarily used, but defines a unique ordering for
46  // * input_ears
47  // *
48  // that defines a correspondence between the two
49  std::vector<Tuple> split_top_dimension_simplices(
50  const ReturnData& ret_data,
51  const Tuple& input_tuple) const;
52 };
Tuple split_edge(const ReturnData &ret_data, const Tuple &input_tuple) const
std::vector< std::array< Tuple, 2 > > new_rib_simplices(const ReturnData &ret_data, const Tuple &output_tuple, PrimitiveType pt) const
std::vector< Tuple > new_spine_simplices(const ReturnData &ret_data, const Tuple &output_tuple, PrimitiveType pt) const
std::vector< Tuple > split_top_dimension_simplices(const ReturnData &ret_data, const Tuple &input_tuple) const
std::vector< Tuple > output_modified_simplices(const ReturnData &ret_data, const Tuple &output_tuple, const PrimitiveType pt) const
std::vector< Tuple > split_rib_simplices(const ReturnData &ret_data, const Tuple &input_tuple, PrimitiveType pt) const