/[ff3d]/ff3d/solver/MeshReader.cpp
ViewVC logotype

Diff of /ff3d/solver/MeshReader.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by delpinux, Tue Feb 25 20:42:18 2003 UTC revision 1.3 by delpinux, Tue Apr 22 19:41:28 2003 UTC
# Line 20  Line 20 
20  #include <MeshReader.hpp>  #include <MeshReader.hpp>
21    
22  #include <MeshOfHexahedra.hpp>  #include <MeshOfHexahedra.hpp>
23    #include <SurfaceMeshOfTriangles.hpp>
24    
25  MeshReader::Keyword MeshReader::__nextKeyword()  MeshReader::Keyword MeshReader::__nextKeyword()
26  {  {
# Line 120  void MeshReader::__readElements() Line 121  void MeshReader::__readElements()
121    
122        break;        break;
123      }      }
124        case Triangles: {
125          size_t numberOfTriangles = __getInteger();
126    
127          __triangles = new Vector<Triangle>(numberOfTriangles);
128    
129          this->__readTriangles();
130          ffout(4) << "- Number of triangles: " << numberOfTriangles << '\n';
131    
132          break;
133        }
134      default: {      default: {
135        fferr(0) << "Reading " << kw.first << " is not implemented\n";        fferr(0) << "Reading " << kw.first << " is not implemented\n";
136        std::exit(1);        std::exit(1);
# Line 147  void MeshReader::__readHexahedra() Line 158  void MeshReader::__readHexahedra()
158    
159      const size_t ref   = __getInteger();      const size_t ref   = __getInteger();
160    
161    #warning SHOULD USE REFERENCE HERE
162      H[i] = Hexahedron(V[a],V[b],V[c],V[d],V[e],V[f],V[g],V[h]);      H[i] = Hexahedron(V[a],V[b],V[c],V[d],V[e],V[f],V[g],V[h]);
163    }    }
164  }  }
165    
166    void MeshReader::__readTriangles()
167    {
168      VerticesSet& V = *__vertices;
169      Vector<Triangle>& T = *__triangles;
170    
171      for (size_t i=0; i<T.size(); ++i) {
172        const size_t a   = __getInteger() - 1;
173        const size_t b   = __getInteger() - 1;
174        const size_t c   = __getInteger() - 1;
175    
176        const size_t ref   = __getInteger();
177    
178    #warning SHOULD USE REFERENCE HERE
179        T[i] = Triangle(V[a],V[b],V[c]);
180      }
181    }
182    
183    
184  MeshReader::MeshReader(std::istream& is,  MeshReader::MeshReader(std::istream& is,
185                         std::string s)                         std::string s)
# Line 167  MeshReader::MeshReader(std::istream& is, Line 196  MeshReader::MeshReader(std::istream& is,
196    __keywordList["Hexahedra"]=Hexahedra;    __keywordList["Hexahedra"]=Hexahedra;
197    __keywordList["Normals"]=Normals;    __keywordList["Normals"]=Normals;
198    __keywordList["Tangents"]=Tangents;    __keywordList["Tangents"]=Tangents;
199      __keywordList["End"]=EndOfFile;
200    
201    size_t integer;    size_t integer;
202    
# Line 218  MeshReader::MeshReader(std::istream& is, Line 248  MeshReader::MeshReader(std::istream& is,
248      MeshOfHexahedra* m = new MeshOfHexahedra(__vertices, __hexahedra);      MeshOfHexahedra* m = new MeshOfHexahedra(__vertices, __hexahedra);
249      __mesh = m;      __mesh = m;
250    }    }
251      if (__triangles != 0) {
252        SurfaceMeshOfTriangles* m = new SurfaceMeshOfTriangles(__vertices, __triangles);
253        __mesh = m;
254      }
255  }  }

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26