00001
00002
00003 #ifndef PLOT2DSURFACE_H
00004 #define PLOT2DSURFACE_H
00005
00006 #include <iostream>
00007 #include "Plot2D.h"
00008
00009 using namespace std;
00010
00012 class Plot2DSurface:public Plot2D {
00013 public:
00014 Plot2DSurface(Worksheet *p);
00015 QStringList Info();
00016 void drawCurves(QPainter *p,int w, int h);
00017 bool contourEnabled() { return contourenabled; }
00018 void enableContour(bool e) { contourenabled = e; }
00019 QColor ContourColor() { return contour_color; }
00020 void setContourColor(QColor c) { contour_color = c; }
00021 bool ColoredContour() { return colored_contour; }
00022 void setColoredContour(bool c) {colored_contour = c; }
00023 bool Mesh(){ return mesh; }
00024 void setMesh(bool m) { mesh=m; }
00025 bool Relative() { return relative; }
00026 void setRelative(bool r) { relative=r; }
00027 int Brush(){ return brush; }
00028 void setBrush(int b) { brush=b; }
00029 bool densityEnabled() { return densityenabled; }
00030 void enableDensity(bool e) { densityenabled = e; }
00031 int Number() { return number; }
00032 void setNumber(int n) { number = n; }
00033 double Threshold() { return threshold; }
00034 void setThreshold(double t) { threshold = t; }
00035 int Palette() { return palette; }
00036 void setPalette(int p) { palette = p; }
00037 QColor Color(int value, int pal);
00038 private:
00039 int graph_segment(QPainter *p,double x1,double y1, double z1, double x2, double y2, double z2,
00040 double x3, double y3, double z3, double level);
00041 bool densityenabled;
00042 bool contourenabled;
00043 QColor contour_color;
00044 bool colored_contour;
00045 bool mesh;
00046 bool relative;
00047 int brush;
00048 int number;
00049 double threshold;
00050 int palette;
00051 };
00052
00053 #endif // PLOT2DSURFACE_H