CheckTetrahedraOverlap.h
Go to the documentation of this file.
1 //
2 // This file is part of the FFEA simulation package
3 //
4 // Copyright (c) by the Theory and Development FFEA teams,
5 // as they appear in the README.md file.
6 //
7 // FFEA is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
11 //
12 // FFEA is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU General Public License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // along with FFEA. If not, see <http://www.gnu.org/licenses/>.
19 //
20 // To help us fund FFEA development, we humbly ask that you cite
21 // the research papers on the package.
22 //
23 
24 #ifndef TETRAHEDRAOVERLAP_H_INCLUDED
25 #define TETRAHEDRAOVERLAP_H_INCLUDED
26 
27 #include <stddef.h>
28 #include "mat_vec_types.h"
29 
30 class checkVars {
31 
32  public:
33 
34  /* checkVars();
35  ~checkVars(); */
36 
37  // Member variables
38  scalar e_v1[6][3];
39  scalar e_v2[6][3];
40  int masks[4];
41 
42  scalar P_V1[4][3];
43  scalar P_V2[4][3];
44 
45  scalar Coord_1[4][4];
46  scalar Coord_2[4][4];
47  scalar n[3];
48 };
49 
51 bool tet_a_tetII(arr3 &V1_0, arr3 &V1_1, arr3 &V1_2, arr3 &V1_3,
52  arr3 &V2_0, arr3 &V2_1, arr3 &V2_2, arr3 &V2_3);
53 
54 
55 
56 #endif
scalar Coord_2[4][4]
vertices coordinates in the affine space
Definition: CheckTetrahedraOverlap.h:46
scalar e_v1[6][3]
vector edge-oriented
Definition: CheckTetrahedraOverlap.h:38
scalar e_v2[6][3]
vectors edge-oriented
Definition: CheckTetrahedraOverlap.h:39
scalar arr3[3]
Definition: mat_vec_types.h:70
int masks[4]
for each face of the first tetrahedron stores the halfspace each vertex of the second tetrahedron bel...
Definition: CheckTetrahedraOverlap.h:40
scalar P_V2[4][3]
differences between the vertices of the second (first) tetrahedron and the vertex 0 of the first(seco...
Definition: CheckTetrahedraOverlap.h:43
scalar P_V1[4][3]
differences between the vertices of the second (first) tetrahedron and the vertex 0 of the first(seco...
Definition: CheckTetrahedraOverlap.h:42
scalar n[3]
variable to store the normals
Definition: CheckTetrahedraOverlap.h:47
bool tet_a_tetII(arr3 &V1_0, arr3 &V1_1, arr3 &V1_2, arr3 &V1_3, arr3 &V2_0, arr3 &V2_1, arr3 &V2_2, arr3 &V2_3)
Definition: CheckTetrahedraOverlap.cpp:254
double scalar
Definition: mat_vec_types.h:36
scalar Coord_1[4][4]
vertices coordinates in the affine space
Definition: CheckTetrahedraOverlap.h:45
Definition: CheckTetrahedraOverlap.h:30