You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.6 KiB
42 lines
1.6 KiB
#ifndef qwt3d_function_h__2004_03_05_13_51_begin_guarded_code
|
|
#define qwt3d_function_h__2004_03_05_13_51_begin_guarded_code
|
|
|
|
#include "qwt3d_gridmapping.h"
|
|
|
|
namespace Qwt3D
|
|
{
|
|
|
|
class SurfacePlot;
|
|
|
|
//! Abstract base class for mathematical functions
|
|
/**
|
|
A Function encapsulates a mathematical function with rectangular domain. The user has to adapt the pure virtual operator()
|
|
to get a working object. Also, the client code should call setDomain, setMesh and create for reasonable operating conditions.
|
|
*/
|
|
class QWT3D_EXPORT Function : public GridMapping
|
|
{
|
|
|
|
public:
|
|
|
|
Function(); //!< Constructs Function object w/o assigned SurfacePlot.
|
|
explicit Function(Qwt3D::SurfacePlot& plotWidget); //!< Constructs Function object and assigns a SurfacePlot
|
|
explicit Function(Qwt3D::SurfacePlot* plotWidget); //!< Constructs Function object and assigns a SurfacePlot
|
|
virtual double operator()(double x, double y) = 0; //!< Overwrite this.
|
|
|
|
void setMinZ(double val); //!< Sets minimal z value.
|
|
void setMaxZ(double val); //!< Sets maximal z value.
|
|
|
|
//! Assigns a new SurfacePlot and creates a data representation for it.
|
|
virtual bool create(Qwt3D::SurfacePlot& plotWidget);
|
|
//! Creates data representation for the actual assigned SurfacePlot.
|
|
virtual bool create();
|
|
//! Assigns the object to another widget. To see the changes, you have to call this function before create().
|
|
void assign(Qwt3D::SurfacePlot& plotWidget);
|
|
//! Assigns the object to another widget. To see the changes, you have to call this function before create().
|
|
void assign(Qwt3D::SurfacePlot* plotWidget);
|
|
};
|
|
|
|
} // ns
|
|
|
|
#endif /* include guarded */
|