Go to the documentation of this file.
42 const point& p0 = pointLst[
f[0]];
43 for (
label fp1 = 1; fp1 <
f.size() - 1; ++fp1)
45 label fp2 =
f.fcIndex(fp1);
47 const point& p1 = pointLst[
f[fp1]];
48 const point& p2 = pointLst[
f[fp2]];
50 os << p0.
x() <<
' ' << p0.
y() <<
' ' << p0.
z() <<
' '
51 << p1.
x() <<
' ' << p1.
y() <<
' ' << p1.
z() <<
' '
52 << p2.
x() <<
' ' << p2.
y() <<
' ' << p2.
z() <<
' '
85 this->storedPoints().transfer(reader.
points());
99 const label startPt = 3*faceI;
100 faceLst[faceI] =
triFace(startPt, startPt+1, startPt+2);
114 faceLst[faceI] =
triFace(startPt, startPt+1, startPt+2);
120 this->storedFaces().transfer(faceLst);
122 this->addZones(sizes);
123 this->stitchFaces(SMALL);
142 ? surfaceFormatsCore::oneZone(faceLst)
152 <<
"Cannot open file for writing " << filename
165 const Face&
f = faceLst[
faceMap[faceIndex++]];
166 writeShell(os, pointLst,
f, zoneI);
173 const Face&
f = faceLst[faceIndex++];
174 writeShell(os, pointLst,
f, zoneI);
195 <<
"Cannot open file for writing " << filename
201 if (surf.
zoneToc().size() == 1)
207 writeShell(os, pointLst, faceLst[faceI], zoneIds[faceI]);
218 forAll(zoneLst[zoneI], localFaceI)
220 const Face&
f = faceLst[
faceMap[faceIndex++]];
221 writeShell(os, pointLst,
f, zoneI);
Pair< int > faceMap(const label facePi, const face &faceP, const label faceNi, const face &faceN)
A class for handling file names.
#define forAll(list, i)
Loop across all elements in list.
bool useFaceMap() const
Use faceMap?
Xfer< List< T > > xfer()
Transfer contents to the Xfer container.
bool read(const char *, int32_t &)
const List< Face > & faces() const
Return const access to the faces.
const pointField & points() const
Return const access to the points.
const List< surfZone > & surfZones() const
Const access to the surface zones.
Ostream & endl(Ostream &os)
Add newline and flush stream.
A proxy for writing MeshedSurface, UnsortedMeshedSurface and surfMesh to various file formats.
void sortedOrder(const UList< T > &, labelList &order)
Generate the (stable) sort order for the 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.
Pre-declare SubField and related Field type.
IOstream & dec(IOstream &io)
const List< label > & zoneIds() const
Return const access to the zone ids.
const List< surfZoneIdentifier > & zoneToc() const
Return const access to the zone table-of-contents.
errorManipArg< error, int > exit(error &err, const int errNo=1)
IOstream & hex(IOstream &io)
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
A surface zone on a MeshedSurface.
void clear()
Clear the list, i.e. set size to zero.
Various functions to operate on Lists.
void size(const label)
Override size to be inconsistent with allocated storage.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
bool good() const
Return true if next operation might succeed.
surfZoneList sortedZones(labelList &faceMap) const
Sort faces according to zoneIds.
const List< label > & faceMap() const
Const access to the faceMap, zero-sized when unused.