MCPcopy Create free account
hub / github.com/OpenFOAM/OpenFOAM-dev / triangleFuncs

Class triangleFuncs

src/meshTools/triSurface/triangleFuncs/triangleFuncs.H:55–149  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

53\*---------------------------------------------------------------------------*/
54
55class triangleFuncs
56{
57
58public:
59
60 // Public data types
61
62 //- Enumeration defining nearness classification
63 enum proxType
64 {
65 NONE,
66 POINT,
67 EDGE
68 };
69
70
71private:
72
73 // Private Member Functions
74
75 //- Helper function for intersect. Sets pt to be anywhere on the edge
76 // between oppositeSidePt and thisSidePt depending on both signs.
77 static void setIntersection
78 (
79 const point& oppositeSidePt,
80 const scalar oppositeSign,
81 const point& thisSidePt,
82 const scalar thisSign,
83 const scalar tol,
84 point& pt
85 );
86
87 //- Helper function.
88 static void selectPt
89 (
90 const bool select0,
91 const point& p0,
92 const point& p1,
93 point& min
94 );
95
96public:
97
98 //- Intersect triangle with parallel edges aligned with axis i0.
99 // Returns true (and intersection in pInter) if any of them intersects
100 // triangle. Used in intersectBb.
101 static bool intersectAxesBundle
102 (
103 const point& V0,
104 const point& V10,
105 const point& V20,
106 const label i0,
107 const pointField& origin,
108 const scalar maxLength,
109 point& pInter
110 );
111
112 //- Does triangle intersect bounding box.

Callers 2

overlapsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected