00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef __NETFEM_UPDATE_VTK__
00010 #define __NETFEM_UPDATE_VTK__
00011
00012 #include <string>
00013 #include "charm++.h"
00014 #include "netfem.h"
00015 #include "charm-api.h"
00016 #include "pup_toNetwork4.h"
00017 #include "conv-ccs.h"
00018 #include "netfem_data.h"
00019
00020
00021
00022
00023
00024
00025
00026
00027 #define VTK_EMPTY_CELL 0
00028 #define VTK_VERTEX 1
00029 #define VTK_POLY_VERTEX 2
00030 #define VTK_LINE 3
00031 #define VTK_POLY_LINE 4
00032 #define VTK_TRIANGLE 5
00033 #define VTK_TRIANGLE_STRIP 6
00034 #define VTK_POLYGON 7
00035 #define VTK_PIXEL 8
00036 #define VTK_QUAD 9
00037 #define VTK_TETRA 10
00038 #define VTK_VOXEL 11
00039 #define VTK_HEXAHEDRON 12
00040 #define VTK_WEDGE 13
00041 #define VTK_PYRAMID 14
00042 #define VTK_PENTAGONAL_PRISM 15
00043 #define VTK_HEXAGONAL_PRISM 16
00044
00045
00046 #define VTK_QUADRATIC_EDGE 21
00047 #define VTK_QUADRATIC_TRIANGLE 22
00048 #define VTK_QUADRATIC_QUAD 23
00049 #define VTK_QUADRATIC_TETRA 24
00050 #define VTK_QUADRATIC_HEXAHEDRON 25
00051 #define VTK_QUADRATIC_WEDGE 26
00052 #define VTK_QUADRATIC_PYRAMID 27
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063 class NetFEM_update_vtk : public NetFEM_update {
00064
00065 public:
00066 NetFEM_update_vtk():NetFEM_update(0,0,0){}
00067
00068 void load(char* filename);
00069 void save(char* filename);
00070
00071 void saveIndex(char* filename, char* chunkfile, int t, int num_chunks);
00072
00073 std::string vtkFileFormat();
00074 std::string vtkIndexFormat(int t, int num_chunks);
00075
00076 int guessCellType(int wid);
00077 };
00078
00079 #endif