35#ifndef polyModifyFace_H
36#define polyModifyFace_H
102 flipFaceFlux_(false),
104 removeFromZone_(false),
133 if (face_.
size() < 3)
136 <<
"Invalid face: less than 3 points. This is not allowed\n"
138 <<
" faceID:" << faceID_
139 <<
" owner:" << owner_
140 <<
" neighbour:" << neighbour_
147 <<
"This is not allowed.\n"
148 <<
" faceID:" << faceID_
149 <<
" owner:" << owner_
150 <<
" neighbour:" << neighbour_
154 if (
min(owner_, neighbour_) >= 0 && owner_ == neighbour_)
157 <<
"This is not allowed.\n"
159 <<
" faceID:" << faceID_
160 <<
" owner:" << owner_
161 <<
" neighbour:" << neighbour_
165 if (neighbour_ >= 0 && patchID_ >= 0)
168 <<
"This is not allowed.\n"
170 <<
" faceID:" << faceID_
171 <<
" owner:" << owner_
172 <<
" neighbour:" << neighbour_
173 <<
" patchID:" << patchID_
180 <<
"belong to zone. This is not allowed.\n"
182 <<
" faceID:" << faceID_
183 <<
" owner:" << owner_
184 <<
" neighbour:" << neighbour_
227 return flipFaceFlux_;
233 return patchID_ >= 0;
251 return zoneID_ >= 0 && owner_ < 0 && neighbour_ < 0;
256 return removeFromZone_;
void size(const label n)
Older name for setAddressableSize.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A face is a list of labels corresponding to mesh vertices.
Class describing modification of a face.
bool flipFaceFlux() const
Does the face flux need to be flipped.
bool removeFromZone() const
label owner() const
Return owner cell ID.
label zoneID() const
Face zone ID.
polyModifyFace(const face &f, const label faceID, const label owner, const label neighbour, const bool flipFaceFlux, const label patchID, const bool removeFromZone, const label zoneID, const bool zoneFlip)
Construct from components.
bool onlyInZone() const
Is the face only a zone face (i.e. not belonging to a cell)
TypeName("modifyFace")
Runtime type information.
const face & newFace() const
Return face.
label patchID() const
Boundary patch ID.
label zoneFlip() const
Face zone flip.
virtual autoPtr< topoAction > clone() const
Construct and return a clone.
bool isInZone() const
Does the face belong to a zone?
label neighbour() const
Return owner cell ID.
bool isInPatch() const
Does the face belong to a boundary patch?
polyModifyFace()
Construct null. Used in constructing lists.
label faceID() const
Return master face ID.
A virtual base class for topological actions.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
errorManip< error > abort(error &err)
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.