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) |
Engine for constructing a star-shaped domain by walking.
|
inline |
|
inline |
Access the face-star-faces.
Definition at line 151 of file star.H.
Referenced by FacePatchIntersection< SrcPatchType, TgtPatchType >::FacePatchIntersection().

|
inline |
Access the star-edge-edges.
Definition at line 157 of file star.H.
Referenced by FacePatchIntersection< SrcPatchType, TgtPatchType >::FacePatchIntersection().

|
inline |
| 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().

| 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().
