Face intersection class. More...
#include <faceAreaIntersect.H>

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. | |
| bool | cacheTriangulation () const |
| Const access to the cacheTriangulation flag. | |
| const DynamicList< triPoints > & | triangles () const noexcept |
| Const access to the triangulation. | |
| DynamicList< triPoints > & | triangles () noexcept |
| Non-const access to the triangulation. | |
| 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. | |
| bool | overlaps (const face &faceA, const face &faceB, const vector &n, const scalar threshold) const |
| Return area of intersection of faceA with faceB. | |
Static Public Member Functions | |
| static scalar & | tolerance () |
| Fraction of local length scale to use as intersection tolerance. | |
| static void | triangulate (const face &f, const pointField &points, const triangulationMode &triMode, faceList &faceTris) |
| Triangulate a face using the given triangulation mode. | |
| static void | triangleFan (const face &f, DynamicList< face > &faces) |
| Decompose face into triangle fan. | |
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 378 of file faceAreaIntersect.C.
References cacheTriangulation().

|
inlinestatic |
Fraction of local length scale to use as intersection tolerance.
Definition at line 105 of file faceAreaIntersectI.H.
Referenced by faceAreaWeightAMI::processSourceFace(), and faceAreaWeightAMI::setNextFaces().

|
static |
Triangulate a face using the given triangulation mode.
Definition at line 400 of file faceAreaIntersect.C.
References Foam::exit(), f(), Foam::FatalError, FatalErrorInFunction, points, List< T >::resize(), tmFan, and tmMesh.

|
inline |
Const access to the cacheTriangulation flag.
Definition at line 111 of file faceAreaIntersectI.H.
Referenced by faceAreaIntersect().

|
inlinenoexcept |
Const access to the triangulation.
Definition at line 222 of file faceAreaIntersect.H.
References Foam::noexcept.
Referenced by faceAreaWeightAMI::calcInterArea().

|
inlinenoexcept |
Non-const access to the triangulation.
Definition at line 230 of file faceAreaIntersect.H.
References Foam::noexcept.
|
inlinestatic |
Decompose face into triangle fan.
Definition at line 24 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 443 of file faceAreaIntersect.C.
References n, and VectorSpace< Form, Cmpt, Ncmpts >::zero.
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 504 of file faceAreaIntersect.C.
References n, and Foam::Zero.
Referenced by faceAreaWeightAMI::overlaps().

|
static |
Definition at line 65 of file faceAreaIntersect.H.
Referenced by advancingFrontAMI::advancingFrontAMI(), and advancingFrontAMI::write().