diff --git a/applications/utilities/surface/surfaceFeatureConvert/surfaceFeatureConvert.C b/applications/utilities/surface/surfaceFeatureConvert/surfaceFeatureConvert.C index 47ba9eb2a9..03c18cd3e9 100644 --- a/applications/utilities/surface/surfaceFeatureConvert/surfaceFeatureConvert.C +++ b/applications/utilities/surface/surfaceFeatureConvert/surfaceFeatureConvert.C @@ -230,8 +230,8 @@ void write int main(int argc, char *argv[]) { argList::noParallel(); - argList::validArgs.append("surface"); - argList::validArgs.append("output name"); + argList::validArgs.append("input file"); + argList::validArgs.append("output file"); # include "setRootCase.H" # include "createTime.H" diff --git a/src/OSspecific/Unix/Unix.C b/src/OSspecific/Unix/Unix.C index 830f48e71a..e50444a236 100644 --- a/src/OSspecific/Unix/Unix.C +++ b/src/OSspecific/Unix/Unix.C @@ -103,11 +103,7 @@ bool Foam::setEnv const bool overwrite ) { -# ifdef linux return setenv(envName.c_str(), value.c_str(), overwrite) == 0; -# else - return putenv((char*)(envName + '=' + value.c_str()).c_str()) == 0; -# endif } diff --git a/src/triSurface/triSurface/interfaces/STL/readSTLASCII.L b/src/triSurface/triSurface/interfaces/STL/readSTLASCII.L index c6343dd55e..fe49521d0d 100644 --- a/src/triSurface/triSurface/interfaces/STL/readSTLASCII.L +++ b/src/triSurface/triSurface/interfaces/STL/readSTLASCII.L @@ -438,6 +438,7 @@ bool triSurface::readSTLASCII(const fileName& STLfileName) STLlabels.clear(); + // Stitch all points within SMALL meters. stitchTriangles(rawPoints); // Convert solidNames into regionNames diff --git a/src/triSurface/triSurface/stitchTriangles.C b/src/triSurface/triSurface/stitchTriangles.C index 5b22529bdd..a9bf3c4782 100644 --- a/src/triSurface/triSurface/stitchTriangles.C +++ b/src/triSurface/triSurface/stitchTriangles.C @@ -42,17 +42,16 @@ bool triSurface::stitchTriangles ) { // Merge points - labelList pointMap(rawPoints.size()); - - pointField newPoints(rawPoints.size()); - + labelList pointMap; + pointField newPoints; bool hasMerged = mergePoints(rawPoints, tol, verbose, pointMap, newPoints); if (hasMerged) { if (verbose) { - Pout<< "stitchTriangles : Renumbering all triangles" << endl; + Pout<< "stitchTriangles : Merged from " << rawPoints.size() + << " points down to " << newPoints.size() << endl; } pointField& ps = const_cast(points()); @@ -73,6 +72,7 @@ bool triSurface::stitchTriangles operator[](newTriangleI)[0] = newA; operator[](newTriangleI)[1] = newB; operator[](newTriangleI)[2] = newC; + operator[](newTriangleI).region() = operator[](i).region(); newTriangleI++; } else if (verbose) diff --git a/src/triSurface/triSurface/triSurface.C b/src/triSurface/triSurface/triSurface.C index 265b08d9c8..b58c2f6f58 100644 --- a/src/triSurface/triSurface/triSurface.C +++ b/src/triSurface/triSurface/triSurface.C @@ -651,7 +651,7 @@ surfacePatchList triSurface::calcPatches(labelList& faceMap) const { sortedRegion[faceI] = operator[](faceI).region(); } - sortedRegion.sort(); + sortedRegion.stableSort(); faceMap = sortedRegion.indices(); @@ -1214,7 +1214,11 @@ void triSurface::writeStats(Ostream& os) const { // Calculate bounding box without any additional addressing // Copy of treeBoundBox code. Cannot use meshTools from triSurface... - boundBox bb; + boundBox bb + ( + point(VGREAT, VGREAT, VGREAT), + point(-VGREAT, -VGREAT, -VGREAT) + ); forAll(*this, triI) { const labelledTri& f = operator[](triI);