33 #ifndef polyModifyFace_H 34 #define polyModifyFace_H 100 flipFaceFlux_(false),
102 removeFromZone_(false),
124 neighbour_(neighbour),
125 flipFaceFlux_(flipFaceFlux),
127 removeFromZone_(removeFromZone),
131 if (face_.
size() < 3)
134 <<
"Invalid face: less than 3 points. This is not allowed\n" 136 <<
" faceID:" << faceID_
137 <<
" owner:" << owner_
138 <<
" neighbour:" << neighbour_
145 <<
"This is not allowed.\n" 146 <<
" faceID:" << faceID_
147 <<
" owner:" << owner_
148 <<
" neighbour:" << neighbour_
152 if (
min(owner_, neighbour_) >= 0 && owner_ == neighbour_)
155 <<
"This is not allowed.\n" 157 <<
" faceID:" << faceID_
158 <<
" owner:" << owner_
159 <<
" neighbour:" << neighbour_
163 if (neighbour_ >= 0 && patchID_ >= 0)
166 <<
"This is not allowed.\n" 168 <<
" faceID:" << faceID_
169 <<
" owner:" << owner_
170 <<
" neighbour:" << neighbour_
171 <<
" patchID:" << patchID_
175 if (zoneID_ < 0 && zoneFlip )
178 <<
"belong to zone. This is not allowed.\n" 180 <<
" faceID:" << faceID_
181 <<
" owner:" << owner_
182 <<
" neighbour:" << neighbour_
225 return flipFaceFlux_;
231 return patchID_ >= 0;
249 return zoneID_ >= 0 && owner_ < 0 && neighbour_ < 0;
254 return removeFromZone_;
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Class describing modification of a face.
A face is a list of labels corresponding to mesh vertices.
label patchID() const
Boundary patch ID.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
void size(const label)
Override size to be inconsistent with allocated storage.
bool isInPatch() const
Does the face belong to a boundary patch?
bool removeFromZone() const
label owner() const
Return owner cell ID.
label zoneID() const
Face zone ID.
label neighbour() const
Return owner cell ID.
polyModifyFace()
Construct null. Used in constructing lists.
virtual autoPtr< topoAction > clone() const
Construct and return a clone.
label faceID() const
Return master face ID.
const face & newFace() const
Return face.
errorManip< error > abort(error &err)
A virtual base class for topological actions.
dimensioned< Type > min(const dimensioned< Type > &, const dimensioned< Type > &)
bool isInZone() const
Does the face belong to a zone?
bool onlyInZone() const
Is the face only a zone face (i.e. not belonging to a cell)
bool flipFaceFlux() const
Does the face flux need to be flipped.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
label zoneFlip() const
Face zone flip.
TypeName("modifyFace")
Runtime type information.