38 Foam::ensightParts::ensightParts(
const IOobject& ioObj)
43 partsList_.transfer(ioList);
67 partsList_.setSize(nPart);
76 nZoneCells += cZone.
size();
103 else if (mesh.
nCells() > nZoneCells)
114 unzoned[idList[i]] = idList[i];
123 unzoned[nUnzoned] = i;
127 unzoned.setSize(nUnzoned);
146 if (patch.size() && !isA<processorPolyPatch>(patch))
159 partsList_.setSize(nPart);
171 if (partsList_[partI].isCellData())
173 partsList_[partI].renumber(origCellId);
177 partsList_[partI].renumber(origFaceId);
191 partsList_[partI].writeGeometry(os);
200 partsList_[partI].writeSummary(os);
210 os <<
nl << partsList_.size()
216 os <<
nl << partsList_[i];
223 os.
check(
"ensightParts::writeData(Ostream&)");
231 const bool useFaceData,
240 ? partsList_[partI].isFaceData()
241 : partsList_[partI].isCellData()
244 partsList_[partI].writeScalarField(os, field, perNode);
256 const bool useFaceData,
265 ? partsList_[partI].isFaceData()
266 : partsList_[partI].isCellData()
269 partsList_[partI].writeVectorField
272 field0, field1, field2,
288 parts.writeGeometry(os);
void writeGeometry(ensightGeoFile &) const
Write the geometry.
const polyBoundaryMesh & boundaryMesh() const
Return boundary mesh.
Ensight output with specialized write() for strings, integers and floats. Correctly handles binary wr...
void writeScalarField(ensightFile &, const List< scalar > &field, const bool useFaceData=false, const bool perNode=false) const
Write (volume) scalar field.
void recalculate(const polyMesh &)
Clear old information and construct anew from polyMesh.
#define forAll(list, i)
Loop across all elements in list.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
A collection of several ensightPart elements.
void writeVectorField(ensightFile &, const List< scalar > &field0, const List< scalar > &field1, const List< scalar > &field2, const bool useFaceData=false, const bool perNode=false) const
Write (volume) vector field components.
virtual bool check(const char *operation) const
Check IOstream status for given operation.
void size(const label)
Override size to be inconsistent with allocated storage.
Specialized Ensight output with extra geometry file header.
An implementation of ensightPart to hold volume mesh cells.
void writeData(Ostream &) const
Write the lists.
~ensightParts()
Destructor.
const cellZoneMesh & cellZones() const
Return cell zone mesh.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
An Ostream is an abstract base class for all output systems (streams, files, token lists...
bool writeSummary(Ostream &) const
Write summary information about the objects.
label size() const
Return the number of elements in the UPtrList.
A PtrList of objects of type <T> with automated input and output.
Ostream & flush(Ostream &os)
Flush stream.
void renumber(const labelUList &origCellId, const labelUList &origFaceId)
Renumber elements.
An implementation of ensightPart to hold volume mesh faces.
Mesh consisting of general polyhedral cells.
A patch is a list of labels that address the faces in the global face list.
IOobject defines the attributes of an object for which implicit objectRegistry management is supporte...