⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vtk_io.h

📁 一个用来实现偏微分方程中网格的计算库
💻 H
字号:
// $Id: vtk_io.h 2959 2008-08-06 22:03:40Z woutruijter $// The libMesh Finite Element Library.// Copyright (C) 2002-2007  Benjamin S. Kirk, John W. Peterson  // This library is free software; you can redistribute it and/or// modify it under the terms of the GNU Lesser General Public// License as published by the Free Software Foundation; either// version 2.1 of the License, or (at your option) any later version.  // This library is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU// Lesser General Public License for more details.  // You should have received a copy of the GNU Lesser General Public// License along with this library; if not, write to the Free Software// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA#ifndef __vtk_io_h__#define __vtk_io_h__// C++ includes#include <map>// Local includes#include "libmesh_common.h"#include "mesh_input.h"#include "mesh_output.h"// Forward declarationsclass MeshBase;class MeshData;class vtkUnstructuredGrid;class vtkPoints;class vtkCellArray;/** * This class implements reading and writing meshes in the VTK format. * Format description:  * cf. <a href="http://www.vtk.org/">VTK home page</a>. * * This class will not have any functionality unless VTK is detected * during configure and hence HAVE_VTK is defined. * * @author Wout Ruijter, 2007 * (Checked in to LibMesh by J.W. Peterson) */// ------------------------------------------------------------// VTKIO class definitionclass VTKIO : public MeshInput<MeshBase>,	      public MeshOutput<MeshBase>{public:  /**   * Constructor.  Takes a writeable reference to a mesh object.   * This is the constructor required to read a mesh.   */  VTKIO (MeshBase& mesh, MeshData* mesh_data=NULL);  /**   * Constructor.  Takes a read-only reference to a mesh object.   * This is the constructor required to write a mesh.   */  VTKIO (const MeshBase& mesh, MeshData* mesh_data=NULL); /**   * This method implements writing a mesh with nodal data to a   * specified file where the nodal data and variable names are provided.   *///  virtual void write_nodal_data (const std::string&,//             const std::vector<Number>&,//             const std::vector<std::string>&);  /**   * Overloads writing equation systems, this is done because when overloading   * write_nodal_data there would be no way to export cell centered data   */  virtual void write_equation_systems(const std::string& fname, const EquationSystems& es);   /**   * This method implements reading a mesh from a specified file   * in VTK format.   */  virtual void read (const std::string& );  /**   * This method implements writing a mesh to a specified ".poly"   file.   * ".poly" files defines so called Piecewise Linear Complex   (PLC).  */  virtual void write (const std::string& );    /**    * Get a pointer to the VTK datastructure   */   vtkUnstructuredGrid* get_vtk_grid(){return _vtk_grid;}	private:  /**   * write the nodes from the mesh into a vtkUnstructuredGrid   */  vtkPoints* nodes_to_vtk(const MeshBase& mesh);//  , vtkUnstructuredGrid*& grid);  /**    * write the cells from the mesh into a vtkUnstructuredGrid   */  vtkCellArray* cells_to_vtk(const MeshBase& mesh, int*& types);//  , vtkUnstructuredGrid*& grid);  /**   * write the solution to a vtkUnstructuredGrid   */  void solution_to_vtk(const EquationSystems& es,vtkUnstructuredGrid*& grid);  /**   * write the system vectors to vtk    */  void system_vectors_to_vtk(const EquationSystems& es,vtkUnstructuredGrid*& grid);   /**    * pointer to the VTK grid    */   vtkUnstructuredGrid* _vtk_grid;    /**   * A pointer to the MeshData object you would like to use.   * with this VTKIO object.  Can be NULL.   */  MeshData* _mesh_data;};// ------------------------------------------------------------// VTKIO inline membersinlineVTKIO::VTKIO (MeshBase& mesh, MeshData* mesh_data) :	MeshInput<MeshBase> (mesh),	MeshOutput<MeshBase>(mesh),	_mesh_data(mesh_data){  _vtk_grid = NULL;	  untested();}inlineVTKIO::VTKIO (const MeshBase& mesh, MeshData* mesh_data) :	MeshOutput<MeshBase>(mesh),	_mesh_data(mesh_data){  _vtk_grid = NULL;	  untested();}#endif // #define __vtk_io_h__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -