All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
faceAreaIntersect Class Reference

Face intersection class. More...

Collaboration diagram for faceAreaIntersect:

Public Types

enum  triangulationMode { tmFan, tmMesh }
 
typedef FixedList< point, 3 > triPoints
 

Public Member Functions

 faceAreaIntersect (const pointField &pointsA, const pointField &pointsB, const bool reverseB=false)
 Construct from components. More...
 
scalar calc (const face &faceA, const face &faceB, const vector &n, const triangulationMode &triMode)
 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 Public Attributes

static const NamedEnum< triangulationMode, 2 > triangulationModeNames_
 

Detailed Description

Face intersection class.

- calculates intersection area by sub-dividing face into triangles and cutting

Source files

Definition at line 54 of file faceAreaIntersect.H.

Member Typedef Documentation

◆ triPoints

typedef FixedList<point, 3> triPoints

Definition at line 58 of file faceAreaIntersect.H.

Member Enumeration Documentation

◆ triangulationMode

Enumerator
tmFan 
tmMesh 

Definition at line 60 of file faceAreaIntersect.H.

Constructor & Destructor Documentation

◆ faceAreaIntersect()

faceAreaIntersect ( const pointField pointsA,
const pointField pointsB,
const bool  reverseB = false 
)

Construct from components.

Definition at line 314 of file faceAreaIntersect.C.

References faceAreaIntersect::triangulate().

Referenced by NamedEnum< compressibleField, 8 >::names().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Function Documentation

◆ tolerance()

Foam::scalar & tolerance ( )
inlinestatic

Fraction of local length scale to use as intersection tolerance.

Definition at line 90 of file faceAreaIntersectI.H.

Referenced by faceAreaWeightAMI::minWeight().

Here is the caller graph for this function:

◆ triangulate()

void triangulate ( const face f,
const pointField points,
const triangulationMode triMode,
faceList faceTris 
)
static

Triangulate a face using the given triangulation mode.

Definition at line 329 of file faceAreaIntersect.C.

References faceAreaIntersect::calc(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, face::nTriangles(), List< T >::resize(), and face::triangles().

Referenced by faceAreaIntersect::faceAreaIntersect(), sweptFaceAreaWeightAMI::interArea(), and AMIInterpolation::patchMagSf().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ calc()

Foam::scalar calc ( const face faceA,
const face faceB,
const vector n,
const triangulationMode triMode 
)

Return area of intersection of faceA with faceB.

Definition at line 372 of file faceAreaIntersect.C.

References forAll.

Referenced by faceAreaWeightAMI::interArea(), and faceAreaIntersect::triangulate().

Here is the caller graph for this function:

Member Data Documentation

◆ triangulationModeNames_

const Foam::NamedEnum< Foam::faceAreaIntersect::triangulationMode, 2 > triangulationModeNames_
static

The documentation for this class was generated from the following files: