foam to Tecplot360 converter
[OpenFOAM-1.6.x.git] / applications / utilities / postProcessing / dataConversion / foamToTecplot360 / vtkMesh.C
blob06ff1aa0cc8db19beba59d2801d1f2b84e3d1190
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright (C) 1991-2009 OpenCFD Ltd.
6      \\/     M anipulation  |
7 -------------------------------------------------------------------------------
8 License
9     This file is part of OpenFOAM.
11     OpenFOAM 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 2 of the License, or (at your
14     option) any later version.
16     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
19     for more details.
21     You should have received a copy of the GNU General Public License
22     along with OpenFOAM; if not, write to the Free Software Foundation,
23     Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
25 \*---------------------------------------------------------------------------*/
27 #include "vtkMesh.H"
28 #include "fvMeshSubset.H"
29 #include "Time.H"
30 #include "cellSet.H"
32 // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
34 // Construct from components
35 Foam::vtkMesh::vtkMesh
37     fvMesh& baseMesh,
38     const word& setName
41     baseMesh_(baseMesh),
42     subsetter_(baseMesh),
43     setName_(setName)
45     if (setName.size())
46     {
47         // Read cellSet using whole mesh
48         cellSet currentSet(baseMesh_, setName_);
50         // Set current subset
51         subsetter_.setLargeCellSubset(currentSet);
52     }
56 // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
58 Foam::polyMesh::readUpdateState Foam::vtkMesh::readUpdate()
60     polyMesh::readUpdateState meshState = baseMesh_.readUpdate();
62     if (meshState != polyMesh::UNCHANGED)
63     {
64         // Note: since fvMeshSubset has no movePoints() functionality reconstruct
65         // the subset even if only movement.
67 //        topoPtr_.clear();
69         if (setName_.size())
70         {
71             Info<< "Subsetting mesh based on cellSet " << setName_ << endl;
73             // Read cellSet using whole mesh
74             cellSet currentSet(baseMesh_, setName_);
76             subsetter_.setLargeCellSubset(currentSet);
77         }
78     }
80     return meshState;
84 // ************************************************************************* //