00001 // This file is part of ff3d - http://www.freefem.org/ff3d 00002 // Copyright (C) 2001, 2002, 2003 Stéphane Del Pino 00003 00004 // This program is free software; you can redistribute it and/or modify 00005 // it under the terms of the GNU General Public License as published by 00006 // the Free Software Foundation; either version 2, or (at your option) 00007 // any later version. 00008 00009 // This program is distributed in the hope that it will be useful, 00010 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 // GNU General Public License for more details. 00013 00014 // You should have received a copy of the GNU General Public License 00015 // along with this program; if not, write to the Free Software Foundation, 00016 // Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00017 00018 // $Id: MeshTetrahedrizor.hpp,v 1.5 2007/02/20 18:16:06 delpinux Exp $ 00019 00020 #ifndef MESH_TETRAHEDRIZOR_HPP 00021 #define MESH_TETRAHEDRIZOR_HPP 00022 00023 #include <MeshGenerator.hpp> 00024 00032 class MeshTetrahedrizor 00033 : public MeshGenerator 00034 { 00035 public: 00036 typedef Vector<const Cell*> CellMapping; 00037 00038 protected: 00039 ConstReferenceCounting<Mesh> __input; 00047 template <typename MeshType> 00048 void __build(const bool& translateSurface); 00049 00055 template <typename MeshType> 00056 ReferenceCounting<CellMapping> 00057 __motherCells(); 00058 00059 private: 00067 MeshTetrahedrizor(const MeshTetrahedrizor& M); 00068 00069 public: 00070 00076 virtual void run(const bool& translateSurface = true); 00077 00085 ReferenceCounting<CellMapping> 00086 motherCells(); 00087 00094 MeshTetrahedrizor(ConstReferenceCounting<Mesh> inputMesh) 00095 : MeshGenerator(), 00096 __input(inputMesh) 00097 { 00098 ; 00099 } 00100 00105 virtual ~MeshTetrahedrizor() 00106 { 00107 ; 00108 } 00109 }; 00110 00111 #endif // MESH_TETRAHEDRIZOR_HPP
1.5.6