TetraederTables.hpp
Go to the documentation of this file.
1 
35 #ifndef TETRAEDERTABLE_HPP_
36 #define TETRAEDERTABLE_HPP_
37 
38 namespace lvr2
39 {
40 
41 //const static int TetraederTable[16][7] = {
42 // {-1, -1, -1, -1, -1, -1, -1}, //0
43 // { 0, 3, 2, -1, -1, -1, -1}, //1
44 // { 0, 1, 4, -1, -1, -1, -1}, //2
45 // { 2, 1, 3, 3, 1, 4, -1}, //3 ??
46 // { 3, 4, 5, -1, -1, -1, -1}, //4
47 // { 2, 0, 5, 5, 0, 4, -1}, //5
48 // { 3, 0, 1, 3, 1, 5, -1}, //6 ??
49 // { 2, 1, 5, -1, -1, -1, -1}, //7
50 // { 2, 1, 5, -1, -1, -1, -1}, //8
51 // { 3, 0, 1, 3, 1, 5, -1}, //9 ??
52 // { 2, 0, 5, 5, 0, 4, -1}, //10
53 // { 3, 4, 5, -1, -1, -1, -1}, //11
54 // { 2, 1, 3, 3, 1, 4, -1}, //12 ??
55 // { 0, 1, 4, -1, -1, -1, -1}, //13
56 // { 0, 3, 2, -1, -1, -1, -1}, //14
57 // {-1, -1, -1, -1, -1, -1, -1} //16
58 //};
59 
60 const static int TetraederTable[16][7] = {
61  {-1, -1, -1, -1, -1, -1, -1}, //0
62  { 0, 3, 2, -1, -1, -1, -1}, //1
63  { 0, 1, 4, -1, -1, -1, -1}, //2
64  { 2, 1, 3, 3, 1, 4, -1}, //3 ??
65  { 3, 4, 5, -1, -1, -1, -1}, //4
66  { 2, 0, 5, 5, 0, 4, -1}, //5
67  { 3, 0, 1, 3, 1, 5, -1}, //6 ??
68  { 2, 1, 5, -1, -1, -1, -1}, //7
69  { 2, 5, 1, -1, -1, -1, -1}, //8
70  { 3, 1, 0, 3, 5, 1, -1}, //9 ??
71  { 2, 5, 0, 5, 4, 0, -1}, //10
72  { 3, 5, 4, -1, -1, -1, -1}, //11
73  { 2, 3, 1, 3, 4, 1, -1}, //12 ??
74  { 0, 4, 1, -1, -1, -1, -1}, //13
75  { 0, 2, 3, -1, -1, -1, -1}, //14
76  {-1, -1, -1, -1, -1, -1, -1} //16
77 };
78 
79 
80 const static int TetraederIntersectionTable[6][6] =
81 {
82  {0, 12, 8, 3, 16, 14}, // 0
83  {16, 12, 14, 2, 1, 18}, // 1
84  {18, 13, 7, 14, 2, 10}, // 2
85  { 9, 4, 12, 1, 15, 18}, // 3
86  { 4, 17, 7, 18, 15, 13}, // 4
87  {15, 17, 13, 11, 5, 6} // 5
88 };
89 
90 
91 const static int TetraederDefinitionTable[6][4] =
92 {
93  {0, 1, 3, 4}, // 0
94  {3, 1, 2, 4}, // 1
95  {4, 2, 3, 7}, // 2
96  {1, 5, 2, 4}, // 3
97  {4, 5, 2, 7}, // 4
98  {2, 5, 6, 7} // 5
99 };
100 
101 const static int TetraederNeighborTable[19][3] =
102 {
103  {12, 10, 9}, // 0
104  {22, 12, 21}, // 1
105  {16, 12, 15}, // 2
106  { 4, 3, 12}, // 3
107  {14, 10, 11}, // 4
108  {23, 22, 14}, // 5
109  {14, 16, 17}, // 6
110  { 4, 5, 14}, // 7
111  { 4, 1, 10}, // 8
112  {22, 19, 10}, // 9
113  { 4, 7, 16}, // 10
114  {22, 25, 16}, // 11
115  {10, -1, -1}, // 12
116  {16, -1, -1}, // 13
117  { 4, -1, -1}, // 14
118  {22, -1, -1}, // 15
119  {12, -1, -1}, // 16
120  {14, -1, -1}, // 17
121  {-1, -1, -1} // 18
122 };
123 
124 const static int TetraederVertexNBTable[19][3] = {
125  { 4, 2, 6}, // 0
126  { 3, 5, 7}, // 1
127  { 0, 6, 4}, // 2
128  { 1, 5, 7}, // 3
129  { 0, 6, 2}, // 4
130  { 3, 7, 1}, // 5
131  { 2, 4, 0}, // 6
132  { 5, 1, 3}, // 7
133  { 9, 11, 10}, // 8
134  { 8, 10, 11}, // 9
135  {11, 9, 8}, // 10
136  {10, 8, 9}, // 11
137  {13, -1, -1}, // 12
138  {12, -1, -1}, // 13
139  {15, -1, -1}, // 14
140  {14, -1, -1}, // 15
141  {17, -1, -1}, // 16
142  {16, -1, -1}, // 17
143  {-1, -1, -1} // 18
144 };
145 
146 } /* namespace lvr */
147 #endif /* TETRAEDERTABLE_HPP_ */
lvr2::TetraederDefinitionTable
const static int TetraederDefinitionTable[6][4]
Definition: TetraederTables.hpp:91
lvr2::TetraederIntersectionTable
const static int TetraederIntersectionTable[6][6]
Definition: TetraederTables.hpp:80
lvr2::TetraederVertexNBTable
const static int TetraederVertexNBTable[19][3]
Definition: TetraederTables.hpp:124
lvr2::TetraederTable
const static int TetraederTable[16][7]
Definition: TetraederTables.hpp:60
lvr2::TetraederNeighborTable
const static int TetraederNeighborTable[19][3]
Definition: TetraederTables.hpp:101
lvr2
Definition: BaseBufferManipulators.hpp:39


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Wed Mar 2 2022 00:37:25