OctreeTables.hpp
Go to the documentation of this file.
1 
28 /*
29  * OctreeTables.hpp
30  *
31  * Created on: 17.01.2019
32  * Author: Benedikt Schumacher
33  */
34 
35 #ifndef OctreeTables_HPP_
36 #define OctreeTables_HPP_
37 
38 namespace lvr2
39 {
40 const static int octreeNeighborTable[12][3] = {
41  {12, 10, 9}, // 0
42  {22, 12, 21}, // 1
43  {16, 12, 15}, // 2
44  { 4, 3, 12}, // 3
45  {14, 10, 11}, // 4
46  {23, 22, 14}, // 5
47  {14, 16, 17}, // 6
48  { 4, 5, 14}, // 7
49  { 4, 1, 10}, // 8
50  {22, 19, 10}, // 9
51  { 4, 7, 16}, // 10
52  {22, 25, 16} // 11
53 };
54 
55 const static int octreeNeighborVertexTable[12][3] = {
56  { 4, 2, 6},
57  { 3, 5, 7},
58  { 0, 6, 4},
59  { 1, 5, 7},
60  { 0, 6, 2},
61  { 3, 7, 1},
62  { 2, 4, 0},
63  { 5, 1, 3},
64  { 9, 11, 10},
65  { 8, 10, 11},
66  {11, 9, 8},
67  {10, 8, 9}
68 };
69 
70 const static int octreeVertexTable[8][3] = {
71  {-1, -1, -1},
72  { 1, -1, -1},
73  { 1, 1, -1},
74  {-1, 1, -1},
75  {-1, -1, 1},
76  { 1, -1, 1},
77  { 1, 1, 1},
78  {-1, 1, 1}
79 };
80 
81 const static int octreeCenterTable[8][3] = {
82  {-1, -1, -1},
83  { 1, -1, -1},
84  {-1, 1, -1},
85  { 1, 1, -1},
86  {-1, -1, 1},
87  { 1, -1, 1},
88  {-1, 1, 1},
89  { 1, 1, 1}
90 };
91 
92 const static int octreeCornerNeighborTable[64][3] = {
93  // 0
94  {-1, -1, -1},
95  { 0, -1, -1},
96  {-1, 0, -1},
97  { 0, 0, -1},
98  {-1, -1, 0},
99  { 0, -1, 0},
100  {-1, 0, 0},
101  { 0, 0, 0},
102  // 1
103  { 0, -1, -1},
104  { 1, -1, -1},
105  { 0, 0, -1},
106  { 1, 0, -1},
107  { 0, -1, 0},
108  { 1, -1, 0},
109  { 0, 0, 0},
110  { 1, 0, 0},
111  // 2
112  {-1, 0, -1},
113  { 0, 0, -1},
114  {-1, 1, -1},
115  { 0, 1, -1},
116  {-1, 0, 0},
117  { 0, 0, 0},
118  {-1, 1, 0},
119  { 0, 1, 0},
120  // 3
121  { 0, 0, -1},
122  { 1, 0, -1},
123  { 0, 1, -1},
124  { 1, 1, -1},
125  { 0, 0, 0},
126  { 1, 0, 0},
127  { 0, 1, 0},
128  { 1, 1, 0},
129  // 4
130  {-1, -1, 0},
131  { 0, -1, 0},
132  {-1, 0, 0},
133  { 0, 0, 0},
134  {-1, -1, 1},
135  { 0, -1, 1},
136  {-1, 0, 1},
137  { 0, 0, 1},
138  // 5
139  { 0, -1, 0},
140  { 1, -1, 0},
141  { 0, 0, 0},
142  { 1, 0, 0},
143  { 0, -1, 1},
144  { 1, -1, 1},
145  { 0, 0, 1},
146  { 1, 0, 1},
147  // 6
148  {-1, 0, 0},
149  { 0, 0, 0},
150  {-1, 1, 0},
151  { 0, 1, 0},
152  {-1, 0, 1},
153  { 0, 0, 1},
154  {-1, 1, 1},
155  { 0, 1, 1},
156  // 7
157  { 0, 0, 0},
158  { 1, 0, 0},
159  { 0, 1, 0},
160  { 1, 1, 0},
161  { 0, 0, 1},
162  { 1, 0, 1},
163  { 0, 1, 1},
164  { 1, 1, 1}
165 };
166 
167 const static int edgeDistanceTable[12][2] = {
168  {0, 1},
169  {0, 2},
170  {0, 4},
171  {1, 3},
172  {1, 3},
173  {2, 3},
174  {2, 6},
175  {3, 7},
176  {4, 5},
177  {4, 6},
178  {5, 7},
179  {6, 7}
180 };
181 
182 } // namespace lvr2
183 
184 #endif /* OctreeTables_HPP_ */
lvr2::octreeNeighborVertexTable
const static int octreeNeighborVertexTable[12][3]
Definition: OctreeTables.hpp:55
lvr2::octreeVertexTable
const static int octreeVertexTable[8][3]
Definition: OctreeTables.hpp:70
lvr2::octreeCornerNeighborTable
const static int octreeCornerNeighborTable[64][3]
Definition: OctreeTables.hpp:92
lvr2::octreeCenterTable
const static int octreeCenterTable[8][3]
Definition: OctreeTables.hpp:81
lvr2
Definition: BaseBufferManipulators.hpp:39
lvr2::edgeDistanceTable
const static int edgeDistanceTable[12][2]
Definition: OctreeTables.hpp:167
lvr2::octreeNeighborTable
const static int octreeNeighborTable[12][3]
Definition: OctreeTables.hpp:40


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:24