AFEPack
GmshMesh.h
浏览该文件的文档。
00001 
00002 // GmshMesh.h : by R.Lie
00003 //
00004 
00005 #ifndef _GmshMesh_h_
00006 #define _GmshMesh_h_
00007 
00008 #include <iostream>
00009 #include <string>
00010 #include <fstream>
00011 
00012 #include "Geometry.h"
00013 
00020 class GmshMesh : public SimplestMesh<3,3>
00021 {
00022 public:
00023         typedef int GeometryType;
00024         static const GeometryType POINT                 = 15;
00025         static const GeometryType LINE                  = 1;
00026         static const GeometryType TRIANGLE              = 2;
00027         static const GeometryType QUADRANGLE            = 3;
00028         static const GeometryType TETRAHEDRON           = 4;
00029         static const GeometryType HEXAHEDRON            = 5;
00030         static const GeometryType PRISM                 = 6;
00031         static const GeometryType PYRAMID               = 7;
00032 private:
00033         std::list<GeometryBM> node;
00034         std::list<GeometryBM> line;
00035         std::list<GeometryBM> surface;
00036 public:
00037     GmshMesh();
00038     virtual ~GmshMesh();
00039 public:
00040         void readData(const std::string&);
00041         virtual void generateMesh(Mesh<3,3>& m);
00042         DeclException1(ExcMeshData, 
00043                 char *, 
00044                 << "Mesh data error: " << arg1);
00045 };
00046 
00047 #endif // _GmshMesh_h_
00048 
00049 //
00050 // end of file