00001
00002
00003 #ifndef GRAPHM_H
00004 #define GRAPHM_H
00005
00006 #include <qtextstream.h>
00007 #include <qprogressdialog.h>
00008 #include "Graph.h"
00009 #include "LRange.h"
00010
00011 class GraphM: public Graph
00012 {
00013 public:
00014 GraphM(QString n="", QString l="", LRange r[3]=0, LSource src=SFUNCTION, PType t=PSURFACE, Style *st=0,
00015 Symbol *sy=0, double *a=0, int dimx=0, int dimy=0, bool s=true);
00016 double *Data() { return array; }
00017 QPixmap Pixmap();
00018 void setPixmap(QPixmap pm);
00019 int width() { return (int)range[0].rMax(); }
00020 int height() { return (int)range[1].rMax(); }
00021 void setWidth(int w) { range[0] = LRange(0,w); }
00022 void setHeight(int h) { range[1] = LRange(0,h); }
00023 LRange Range(int i) { return range[i]; }
00024 void setRange(LRange *r) { range[0]=r[0];range[1]=r[1];range[2]=r[2]; }
00025 void setZRange(LRange *r) { range[2]=*r; }
00026 int NX() { return nx; }
00027 int NY() { return ny; }
00028 void setNumber(int NX,int NY) {nx=NX, ny=NY; }
00029 QStringList Info();
00030 void save(QTextStream *t, QProgressDialog *progress);
00031 void open(QTextStream *t, int version, QProgressDialog *progress);
00032 private:
00033 int nx, ny;
00034 double *array;
00035 LRange *range;
00036 };
00037
00038 #endif // GRAPHM_H