00001
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00020
00021
#ifndef MODELML_H
00022
#define MODELML_H
00023
00024
#include <stdlib.h>
00025
#include <qdom.h>
00026
#include <qfile.h>
00027
#include <qapplication.h>
00028
00029
#include "../primitives/segment.h"
00030
#include "../primitives/circle.h"
00031
#include "../primitives/bezier.h"
00032
#include "../primitives/bspline.h"
00033
#include "../primitives/point.h"
00034
00045
00046
00048
00049 class Modelml :
public QDomDocument
00050 {
00051
private:
00056
void appendElem(
const vector<Primitive*> &ens_prim, QDomElement &elem);
00057
00062
void loadElem(QDomElement &e,vector<Primitive*> &ens_res);
00063
00068
Primitive*
loadAttribut(
const QDomElement& att);
00069
00070
00071
public:
00072
00076
Modelml();
00077
00084
void save(
const string &output ,
const vector<Primitive*> &primProfile,
const vector<Primitive*> &primSection,
const vector<Primitive*> &primAxis);
00085
00090 vector<vector<Primitive*> >
load(
const string input);
00091
00092 };
00093
00094
#endif
00095