1 #ifndef WRITEUSER 2 #define WRITEUSER 3 4 /**************************************************************************/ 5 /* File: writeuser.hh */ 6 /* Authors: many */ 7 /* Date: 10. Dec. 97 */ 8 /**************************************************************************/ 9 10 namespace netgen { 11 12 DLL_HEADER extern 13 void WriteFile (int typ, 14 const Mesh & mesh, 15 const NetgenGeometry & geom, 16 const char * filename, 17 const char * geomfile = NULL, 18 double h = 0); 19 20 21 22 DLL_HEADER extern 23 void ReadFile (Mesh & mesh, 24 const string & filename); 25 26 27 28 29 30 31 extern 32 void WriteNeutralFormat (const Mesh & mesh, 33 const NetgenGeometry & geom, 34 const string & filename); 35 36 extern 37 void WriteSurfaceFormat (const Mesh & mesh, 38 const string & filename); 39 40 extern 41 void WriteSTLFormat (const Mesh & mesh, 42 const string & filename); 43 44 45 // Philippose - 16 August 2010 46 // Added the STL Extended format in which 47 // each face of the geometry is treated as 48 // a separate "solid" entity in the STL file 49 extern 50 void WriteSTLExtFormat (const Mesh & mesh, 51 const string & filename); 52 53 54 extern 55 void WriteVRMLFormat (const Mesh & mesh, 56 bool faces, 57 const string & filename); 58 59 extern 60 void WriteFEPPFormat (const Mesh & mesh, 61 const NetgenGeometry & geom, 62 const string & filename); 63 64 extern 65 void WriteGmshFormat (const Mesh & mesh, 66 const NetgenGeometry & geom, 67 const string & filename); 68 69 70 // Philippose - 29/01/2009 71 // Added GMSH v2.xx Mesh Export support 72 void WriteGmsh2Format (const Mesh & mesh, 73 const NetgenGeometry & geom, 74 const string & filename); 75 76 77 // Philippose - 25/10/2009 78 // Added OpenFOAM 1.5+ Mesh Export support 79 extern 80 void WriteOpenFOAM15xFormat (const Mesh & mesh, 81 const string & casename, 82 const bool compressed); 83 84 85 extern 86 void WriteUserChemnitz (const Mesh & mesh, 87 const string & filename); 88 89 extern 90 void WriteJCMFormat (const Mesh & mesh, 91 const NetgenGeometry & geom, 92 const string & filename); 93 94 95 extern 96 void WriteDiffPackFormat (const Mesh & mesh, 97 const NetgenGeometry & geom, 98 const string & filename); 99 100 extern 101 void WriteTochnogFormat (const Mesh & mesh, 102 const string & filename); 103 104 extern 105 void WriteTecPlotFormat (const Mesh & mesh, 106 const NetgenGeometry & geom, 107 const string & filename); 108 109 extern 110 void WriteAbaqusFormat (const Mesh & mesh, 111 const string & filename); 112 113 extern 114 void WriteFluentFormat (const Mesh & mesh, 115 const string & filename); 116 117 extern 118 void WritePermasFormat (const Mesh & mesh, 119 const string & filename); 120 121 extern 122 void WriteFEAPFormat (const Mesh & mesh, 123 const string & filename); 124 125 extern 126 void WriteElmerFormat (const Mesh & mesh, 127 const string & filename); 128 129 130 extern 131 void WriteEdgeElementFormat (const Mesh & mesh, 132 const NetgenGeometry & geom, 133 const string & filename); 134 135 136 137 #ifdef OLIVER 138 extern 139 void WriteTETFormat (const Mesh & mesh, 140 const string & filename); 141 142 #endif 143 144 extern void ReadTETFormat (Mesh & mesh, 145 const string & filename); 146 147 148 extern void ReadFNFFormat (Mesh & mesh, 149 const string & filename); 150 151 152 153 extern void DLL_HEADER ReadCGNSMesh (Mesh & mesh, 154 const string & filename); 155 156 extern void DLL_HEADER WriteCGNSMesh (const Mesh & mesh, 157 const string & filename); 158 159 // read/write mesh and solutions from CGNS file 160 extern tuple<shared_ptr<Mesh>, vector<string>, vector<Array<double>>, vector<int>> 161 DLL_HEADER ReadCGNSFile(string filename, int base); 162 163 extern void DLL_HEADER WriteCGNSFile(shared_ptr<Mesh> mesh,string filename, vector<string> fields, 164 vector<Array<double>> values, vector<int> locations); 165 166 167 void WriteDolfinFormat (const Mesh & mesh, 168 const string & filename); 169 170 171 extern void DLL_HEADER RegisterUserFormats (NgArray<const char*> & names, 172 NgArray<const char*> & extensions); 173 174 175 extern bool DLL_HEADER WriteUserFormat (const string & format, 176 const Mesh & mesh, 177 // const NetgenGeometry & geom, 178 const string & filename); 179 180 } 181 182 #endif 183 184