38 template<
class BoolListType,
class FaceList,
class Po
intField>
42 const BoolListType& borderEdge,
44 const label currentZone,
61 label facei = changedFaces[i];
63 const labelList& fEdges = faceEdges[facei];
67 label edgeI = fEdges[fEdgeI];
69 if (!borderEdge[edgeI])
71 const labelList& eFaceLst = edgeFaces[edgeI];
75 label nbrFacei = eFaceLst[j];
80 newChangedFaces.
append(nbrFacei);
82 else if (
faceZone[nbrFacei] != currentZone)
86 <<
" at face " << nbrFacei
87 <<
" connects to zone " << currentZone
88 <<
" at face " << facei
96 if (newChangedFaces.empty())
102 changedFaces.
transfer(newChangedFaces);
107 template<
class BoolListType,
class FaceList,
class Po
intField>
112 const BoolListType& borderEdge,
120 for (label startFacei = 0; startFacei <
faceZone.
size();)
128 markZone(
p, borderEdge, startFacei, zoneI,
faceZone);
139 template<
class BoolListType,
class FaceList,
class Po
intField>
144 const BoolListType& includeFaces,
149 const auto& localFaces =
p.localFaces();
151 faceMap.resize(localFaces.size());
158 forAll(localFaces, oldFacei)
160 if (includeFaces[oldFacei])
166 pointUsed.set(localFaces[oldFacei]);
172 pointMap = pointUsed.sortedToc();
176 template<
class FaceList,
class Po
intField>
193 for (
const auto&
f :
p)
195 for (
const label pointi :
f)
197 if (pointUsed.set(pointi))
void size(const label n)
Older name for setAddressableSize.
void transfer(List< T > &list)
Transfer the contents of the argument List into this list and annul the argument list.
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
void append(const T &val)
Append an element at the end of the list.
A bounding box defined in terms of min/max extrema points.
Pair< int > faceMap(const label facePi, const face &faceP, const label faceNi, const face &faceN)
#define forAll(list, i)
Loop across all elements in list.
A list of faces which address into the list of points.
void add(const boundBox &bb)
Extend to include the second box.
void setSize(const label n)
Alias for resize()
void clear()
Clear the list, i.e. set size to zero.
errorManip< error > abort(error &err)
A bitSet stores bits (elements with only two states) in packed internal format and supports a variety...
void reset()
Reset to an inverted box.
A subset of mesh faces organised as a primitive patch.