Face intersection class. More...
Public Types | |
enum | triangulationMode { tmFan, tmMesh } |
Public Member Functions | |
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. More... | |
bool | cacheTriangulation () const |
Const access to the cacheTriangulation flag. More... | |
const DynamicList< triPoints > | triangles () const |
Const access to the triangulation. More... | |
DynamicList< triPoints > & | triangles () |
Non-const access to the triangulation. More... | |
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. More... | |
bool | overlaps (const face &faceA, const face &faceB, const vector &n, const scalar threshold) const |
Return area of intersection of faceA with faceB. More... | |
Static Public Member Functions | |
static scalar & | tolerance () |
Fraction of local length scale to use as intersection tolerance. More... | |
static void | triangulate (const face &f, const pointField &points, const triangulationMode &triMode, faceList &faceTris) |
Triangulate a face using the given triangulation mode. More... | |
static void | triangleFan (const face &f, DynamicList< face > &faces) |
Decompose face into triangle fan. More... | |
Static Public Attributes | |
static const Enum< triangulationMode > | triangulationModeNames_ |
Face intersection class.
Definition at line 55 of file faceAreaIntersect.H.
enum triangulationMode |
Enumerator | |
---|---|
tmFan | |
tmMesh |
Definition at line 59 of file faceAreaIntersect.H.
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.
Definition at line 379 of file faceAreaIntersect.C.
|
inlinestatic |
Fraction of local length scale to use as intersection tolerance.
Definition at line 105 of file faceAreaIntersectI.H.
|
static |
Triangulate a face using the given triangulation mode.
Definition at line 401 of file faceAreaIntersect.C.
References Foam::exit(), f(), Foam::FatalError, FatalErrorInFunction, points, and List< T >::resize().
|
inline |
Const access to the cacheTriangulation flag.
Definition at line 111 of file faceAreaIntersectI.H.
|
inline |
Const access to the triangulation.
Definition at line 118 of file faceAreaIntersectI.H.
Referenced by faceAreaWeightAMI::calcInterArea().
|
inline |
Non-const access to the triangulation.
Definition at line 124 of file faceAreaIntersectI.H.
|
inlinestatic |
Decompose face into triangle fan.
Definition at line 25 of file faceAreaIntersectI.H.
References DynamicList< T, SizeMin >::append(), and f().
Referenced by advancingFrontAMI::triangulatePatch().
void calc | ( | const face & | faceA, |
const face & | faceB, | ||
const vector & | n, | ||
scalar & | area, | ||
vector & | centroid | ||
) | const |
Return area of intersection of faceA with faceB and effective face centre.
Definition at line 444 of file faceAreaIntersect.C.
References Foam::fieldTypes::area, and n.
Referenced by faceAreaWeightAMI::calcInterArea().
bool overlaps | ( | const face & | faceA, |
const face & | faceB, | ||
const vector & | n, | ||
const scalar | threshold | ||
) | const |
Return area of intersection of faceA with faceB.
Definition at line 505 of file faceAreaIntersect.C.
References Foam::fieldTypes::area, n, and Foam::Zero.
Referenced by faceAreaWeightAMI::overlaps().
|
static |
Definition at line 65 of file faceAreaIntersect.H.
Referenced by advancingFrontAMI::advancingFrontAMI(), and advancingFrontAMI::write().