1
0
mirror of https://gitee.com/drabel/LibQQt.git synced 2025-01-04 10:18:44 +08:00

59 lines
879 B
C
Raw Normal View History

2018-05-31 23:29:03 +08:00
#ifndef AUTOSWITCH_H__
#define AUTOSWITCH_H__
#include <qtimer.h>
#include "qwt3d_surfaceplot.h"
#include "qwt3d_function.h"
typedef Qwt3D::SurfacePlot SurfacePlot; // VC6/moc issue
typedef Qwt3D::Function Function; // VC6/moc issue
class Saddle : public Function
{
public:
Saddle(SurfacePlot& pw)
:Function(pw)
{
setDomain(-2.5,2.5,-2.5,2.5);
setMaxZ(1.5);
setMinZ(-1.5);
setMesh(31,31);
}
double operator()(double x, double y)
{
return x*y;
}
};
class Hat : public Function
{
public:
Hat(SurfacePlot& pw)
:Function(pw)
{
setDomain(-1.5,1.5,-1.5,1.5);
setMesh(41,41);
}
double operator()(double x, double y)
{
return 1.0 / (x*x+y*y+0.3);
}
};
class Plot : public SurfacePlot
{
Q_OBJECT
public:
Plot(QWidget* pw, int updateinterval);
public slots:
void rotate();
};
#endif