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.
45 lines
1.5 KiB
45 lines
1.5 KiB
#ifndef qwt3d_parametricsurface_h__2004_03_05_23_43_begin_guarded_code
|
|
#define qwt3d_parametricsurface_h__2004_03_05_23_43_begin_guarded_code
|
|
|
|
#include "qwt3d_gridmapping.h"
|
|
|
|
namespace Qwt3D
|
|
{
|
|
|
|
class SurfacePlot;
|
|
|
|
|
|
//! Abstract base class for parametric surfaces
|
|
/**
|
|
|
|
*/
|
|
class QWT3D_EXPORT ParametricSurface : public GridMapping
|
|
{
|
|
|
|
public:
|
|
ParametricSurface(); //!< Constructs ParametricSurface object w/o assigned SurfacePlot.
|
|
//! Constructs ParametricSurface object and assigns a SurfacePlot
|
|
explicit ParametricSurface(Qwt3D::SurfacePlot& plotWidget);
|
|
//! Constructs ParametricSurface object and assigns a SurfacePlot
|
|
explicit ParametricSurface(Qwt3D::SurfacePlot* plotWidget);
|
|
//! Overwrite this
|
|
virtual Qwt3D::Triple operator()(double u, double v) = 0;
|
|
//! 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);
|
|
//! Provide information about periodicity of the 'u' resp. 'v' domains.
|
|
void setPeriodic(bool u, bool v);
|
|
|
|
private:
|
|
bool uperiodic_, vperiodic_;
|
|
};
|
|
|
|
} // ns
|
|
|
|
#endif /* include guarded */
|