Merge branch 'master' of ssh://git.code.sf.net/p/foam-extend/foam-extend-3.2
[foam-extend-3.2.git] / applications / utilities / immersedBoundary / surfaceNormal / surfaceNormal.C
blob1433facc2eed52feb230a6e45a550feda4de85d2
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | foam-extend: Open Source CFD
4    \\    /   O peration     | Version:     3.2
5     \\  /    A nd           | Web:         http://www.foam-extend.org
6      \\/     M anipulation  | For copyright notice see file Copyright
7 -------------------------------------------------------------------------------
8 License
9     This file is part of foam-extend.
11     foam-extend is free software: you can redistribute it and/or modify it
12     under the terms of the GNU General Public License as published by the
13     Free Software Foundation, either version 3 of the License, or (at your
14     option) any later version.
16     foam-extend is distributed in the hope that it will be useful, but
17     WITHOUT ANY WARRANTY; without even the implied warranty of
18     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19     General Public License for more details.
21     You should have received a copy of the GNU General Public License
22     along with foam-extend.  If not, see <http://www.gnu.org/licenses/>.
24 Description
25     Write surface and normal vector
27 \*---------------------------------------------------------------------------*/
29 #include "argList.H"
30 #include "triSurface.H"
31 #include "IFstream.H"
33 using namespace Foam;
35 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
36 // Main program:
38 int main(int argc, char *argv[])
40     argList::noParallel();
41     argList::validArgs.clear();
43     argList::validArgs.append("surface file");
44     argList args(argc, argv);
46     fileName surfFileName(args.additionalArgs()[0]);
48     Info<< "Reading surf from " << surfFileName << " ..." << endl;
50     triSurface ts(surfFileName);
52     fileName normalFileName(surfFileName.lessExt() + "Normals");
54     Info<< "Writing normals to file " << normalFileName << endl;
55     triSurface::writeVTKNormals
56     (
57         normalFileName,
58         ts,
59         ts.points()
60     );
62     Info << "End\n" << endl;
64     return 0;
68 // ************************************************************************* //