40#ifndef faceAreaIntersect_H
41#define faceAreaIntersect_H
93 bool cacheTriangulation_;
116 inline void setTriPoints
126 inline point planeIntersection
135 void triSliceWithPlane
145 void triangleIntersect
168 const bool reverseB =
false,
206 DynamicList<face>& faces
226 const scalar threshold
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects.
Enum is a wrapper around a list of names/values that represent particular enumeration (or int) values...
A 1D vector of objects of type <T> with a fixed length <N>.
void calc(const face &faceA, const face &faceB, const vector &n, scalar &area, vector ¢roid) const
Return area of intersection of faceA with faceB and effective face centre.
faceAreaIntersect(const pointField &pointsA, const pointField &pointsB, const DynamicList< face > &trisA, const DynamicList< face > &trisB, const bool reverseB=false, const bool cacheTriangulation=false)
Construct from components.
bool overlaps(const face &faceA, const face &faceB, const vector &n, const scalar threshold) const
Return area of intersection of faceA with faceB.
static void triangleFan(const face &f, DynamicList< face > &faces)
Decompose face into triangle fan.
static const Enum< triangulationMode > triangulationModeNames_
bool cacheTriangulation() const
Const access to the cacheTriangulation flag.
static void triangulate(const face &f, const pointField &points, const triangulationMode &triMode, faceList &faceTris)
Triangulate a face using the given triangulation mode.
static scalar & tolerance()
Fraction of local length scale to use as intersection tolerance.
DynamicList< triPoints > & triangles() noexcept
Non-const access to the triangulation.
const DynamicList< triPoints > & triangles() const noexcept
Const access to the triangulation.
A face is a list of labels corresponding to mesh vertices.
Geometric class that creates a 3D plane and can return the intersection point between a line and the ...
Triangle point storage. Default constructable (triangle is not).
void reverse(UList< T > &list, const label n)
Reverse the first n elements of the list.
List< face > faceList
List of faces.
vector point
Point is a vector.
vectorField pointField
pointField is a vectorField.