47 int main(
int argc,
char *argv[])
58 "perform some surface checking/cleanup on the input surface"
67 Info<<
"Reading surface " << inFileName <<
nl
68 <<
"Collapsing all triangles with" <<
nl
69 <<
" edges or heights < " << minLen <<
nl
70 <<
" quality < " << minQuality <<
nl
71 <<
"Writing result to " << outFileName <<
nl <<
endl;
74 Info<<
"Reading surface from " << inFileName <<
" ..." <<
nl <<
endl;
76 surf.writeStats(
Info);
80 Info<<
"Removing duplicate and illegal triangles ..." <<
nl <<
endl;
84 Info<<
"Collapsing triangles to edges ..." <<
nl <<
endl;
90 if (nEdgeCollapse == 0)
106 <<
"Resulting surface:" <<
endl;
107 surf.writeStats(
Info);
110 <<
"Writing refined surface to " << outFileName <<
" ..." <<
endl;
111 surf.
write(outFileName);
virtual Ostream & write(const char)=0
Write character.
Extract command arguments and options from the supplied argc and argv parameters.
static void addBoolOption(const word &opt, const string &usage="")
Add to a bool option to validOptions with usage information.
bool optionFound(const word &opt) const
Return true if the named option is found.
static SLList< string > validArgs
A list of valid (mandatory) arguments.
T argRead(const label index) const
Read a value from the argument at index.
A class for handling file names.
Triangulated surface description with patch information.
Routines collapse sliver triangles by splitting the base edge.
label collapseBase(triSurface &surf, const scalar minLen, const scalar minQuality)
Keep collapsing all triangles whose height is < minLen or quality < minQ.
Routines to collapse small edges.
label collapseEdge(triSurface &surf, const scalar minLen)
Keep collapsing all edges < minLen.
int main(int argc, char *argv[])
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Ostream & endl(Ostream &os)
Add newline and flush stream.
Foam::argList args(argc, argv)