32 if (solidName.empty())
51 names_.push_back(std::move(solidName));
57 <<
"Duplicate solid-name: " << solidName <<
nl
79 currVertex_[nVertexCmpt_] = val;
81 if (++nVertexCmpt_ == 3)
83 points_.push_back(currVertex_);
95 currVertex_[nVertexCmpt_] = ::atof(text);
97 if (++nVertexCmpt_ == 3)
99 points_.push_back(currVertex_);
110 if (nFacetPoints_ == 3)
112 facets_.push_back(groupId_);
117 if (nFacetPoints_ > 3)
124 points_.resize(points_.size() - nFacetPoints_);
141 points_(3*nTrisEstimated),
142 facets_(nTrisEstimated)
DynamicList< label > facets_
void beginFacet()
Action when entering 'facet'.
HashTable< label > nameLookup_
void beginSolid(word solidName)
Action when entering 'solid'.
bool addVertexComponent(float val)
Add next vertex component. On each third call, adds the point.
STLpoint currVertex_
Scratch space for reading 'vertex'.
int nFacetPoints_
The number of local points on the current facet.
DynamicList< word > names_
void endFacet()
Action on 'endfacet'.
STLAsciiParse(const STLAsciiParse &)=delete
No copy construct.
DynamicList< STLpoint > points_
DynamicList< label > sizes_
int nVertexCmpt_
Current vertex component when reading 'vertex'.
void clear()
Reset stored values.
void resetVertex()
Reset vertex component to zero.
A class for handling words, derived from Foam::string.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
errorManipArg< error, int > exit(error &err, const int errNo=1)
constexpr char nl
The newline '\n' character (0x0a).