star Class Reference

Engine for constructing a star-shaped domain by walking. More...

Classes

class  context
 Context class. Returned by populate and resets the star when it. More...
 
struct  edgeLink
 Star-edge structure. Poor man's linked list link. More...
 

Public Member Functions

 star ()
 Construct null. More...
 
 ~star ()
 
const DynamicList< label > & starFaceFaces () const
 Access the star-face-faces. More...
 
const DynamicList< label > & faceStarFaces () const
 Access the face-star-faces. More...
 
const DynamicList< edgeLink > & starEdgeEdges () const
 Access the star-edge-edges. More...
 
const DynamicList< label > & edgeStarEdges () const
 Access the edge-star-edges. More...
 
template<class CanCross , class FaceEdges >
context populate (const label faceOrEdgei, const bool isFace, CanCross canCross, const UList< FaceEdges > &faceEdges, const UList< labelPair > &edgeFaces, const label maxIterations=labelMax)
 Populate the star given a seed face or edge, a function. More...
 
template<class CanCross , class FaceEdges >
Foam::star::context populate (const label faceOrEdgei, const bool isFace, CanCross canCross, const UList< FaceEdges > &faceEdges, const UList< labelPair > &edgeFaces, const label maxIterations)
 

Detailed Description

Engine for constructing a star-shaped domain by walking.

Source files

Definition at line 49 of file star.H.

Constructor & Destructor Documentation

◆ star()

star ( )

Construct null.

Definition at line 86 of file star.C.

◆ ~star()

~star ( )

Definition at line 104 of file star.C.

Member Function Documentation

◆ starFaceFaces()

const DynamicList<label>& starFaceFaces ( ) const
inline

Access the star-face-faces.

Definition at line 145 of file star.H.

◆ faceStarFaces()

const DynamicList<label>& faceStarFaces ( ) const
inline

Access the face-star-faces.

Definition at line 151 of file star.H.

Referenced by FacePatchIntersection< SrcPatchType, TgtPatchType >::FacePatchIntersection().

Here is the caller graph for this function:

◆ starEdgeEdges()

const DynamicList<edgeLink>& starEdgeEdges ( ) const
inline

Access the star-edge-edges.

Definition at line 157 of file star.H.

Referenced by FacePatchIntersection< SrcPatchType, TgtPatchType >::FacePatchIntersection().

Here is the caller graph for this function:

◆ edgeStarEdges()

const DynamicList<label>& edgeStarEdges ( ) const
inline

Access the edge-star-edges.

Definition at line 163 of file star.H.

◆ populate() [1/2]

context populate ( const label  faceOrEdgei,
const bool  isFace,
CanCross  canCross,
const UList< FaceEdges > &  faceEdges,
const UList< labelPair > &  edgeFaces,
const label  maxIterations = labelMax 
)

Populate the star given a seed face or edge, a function.

`canCross(edgei, facei)` to determine whether an edge may be cross, and face-edge and edge-face addressing. After this is called, the forAll... macros below can be user to iterate through the star faces, or around the edges of the star perimeter.

Referenced by FacePatchIntersection< SrcPatchType, TgtPatchType >::FacePatchIntersection().

Here is the caller graph for this function:

◆ populate() [2/2]

Foam::star::context populate ( const label  faceOrEdgei,
const bool  isFace,
CanCross  canCross,
const UList< FaceEdges > &  faceEdges,
const UList< labelPair > &  edgeFaces,
const label  maxIterations 
)

Definition at line 127 of file starTemplates.C.

References Foam::cross(), Foam::first(), forAll, DynamicList< T, SizeInc, SizeMult, SizeDiv >::resize(), UList< T >::size(), and List< T >::size().

Here is the call graph for this function:

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