00001
#ifndef _MESH_H_
00002
#define _MESH_H_
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
#include <qdict.h>
00027
#include <qstring.h>
00028
#include <qstringlist.h>
00029
00030
00031
#include "Vertex.h"
00032
#include "Triangle.h"
00033
00034
00035
00037
00049 class Mesh
00050 {
00051
00052
public:
00053
00054
00059
Mesh();
00060
00061
00062
00068 ~Mesh() {}
00069
00070
00071
00100
void write_XML(
const QString& filename);
00101
00102
00103
00108
void write_XML(QTextStream &cout);
00109
00110
00111
00112
void add_triangle(
Triangle* t);
00113
void add_vertex(
Vertex* p);
00114
00115
00116
00117
void remove_triangle(
Triangle* t);
00118
void remove_vertex(
Vertex* p);
00119
00120
00121
00129 QDict<Triangle>&
get_triangles() {
return _triangles; }
00130
00131
const QDict<Vertex>& get_vertices()
const {
return _vertices; }
00132
00133
00137 Vertex*
find_vertex(
const QString&
id) {
return _vertices.find(
id); }
00138
00139
00140
00150
void clear();
00151
00152
00153
00154
private:
00155
00156
void init();
00157
00158
00159 QDict<Vertex> _vertices;
00160 QDict<Triangle> _triangles;
00161
00162
00163
00164 };
00165
00166
00167
00168
#endif