Plot3D Class Reference

Base class for all plotting widgets. More...

#include <qwt3d_plot3d.h>

Inheritance diagram for Plot3D:

ExtGLWidget GraphPlot SurfacePlot VolumePlot GridPlot MeshPlot

List of all members.

Public Slots

virtual bool save (QString const &fileName, QString const &format)

Public Member Functions

 Plot3D (QWidget *parent=0, const QGLWidget *shareWidget=0)
virtual ~Plot3D ()
QPixmap renderPixmap (int w=0, int h=0, bool useContext=false)
void updateData ()
void createCoordinateSystem (Qwt3D::Triple beg, Qwt3D::Triple end)
Qwt3D::CoordinateSystemcoordinates ()
Qwt3D::ColorLegendlegend ()
void setPlotStyle (Qwt3D::PLOTSTYLE val)
Qwt3D::EnrichmentsetPlotStyle (Qwt3D::Enrichment const &val)
Qwt3D::PLOTSTYLE plotStyle () const
Qwt3D::EnrichmentuserStyle () const
void setShading (Qwt3D::SHADINGSTYLE val)
Qwt3D::SHADINGSTYLE shading () const
void setIsolines (unsigned steps)
void setIsolines (const std::vector< double > &val)
unsigned isolines () const
void setSmoothMesh (bool val)
bool smoothDataMesh () const
void setBackgroundColor (Qwt3D::RGBA rgba)
Qwt3D::RGBA backgroundRGBAColor () const
void setMeshColor (Qwt3D::RGBA rgba)
Qwt3D::RGBA meshColor () const
void setMeshLineWidth (double lw)
double meshLineWidth () const
void setDataColor (Color *col)
const ColordataColor () const
virtual Qwt3D::EnrichmentaddEnrichment (Qwt3D::Enrichment const &)
virtual bool degrade (Qwt3D::Enrichment *)
Qwt3D::ParallelEpiped hull () const
void showColorLegend (bool)
void setCoordinateStyle (Qwt3D::COORDSTYLE st)
void setPolygonOffset (double d)
double polygonOffset () const
void setTitlePosition (double rely, double relx=0.5, Qwt3D::ANCHOR=Qwt3D::TopCenter)
void setTitleFont (const QString &family, int pointSize, int weight=QFont::Normal, bool italic=false)
void setTitleColor (Qwt3D::RGBA col)
void setTitle (const QString &title)
bool hasData () const

Protected Types

enum  OBJECTS { DataObject, LegendObject, NormalObject, DisplayListSize }
typedef std::list
< Qwt3D::Enrichment * > 
EnrichmentList
typedef EnrichmentList::iterator ELIT

Protected Member Functions

void initializeGL ()
void paintGL ()
void resizeGL (int w, int h)
virtual void calculateHull ()
virtual void createOpenGlData ()=0
virtual void drawEnrichment (Qwt3D::Enrichment &)
virtual void drawEnrichments ()
void createCoordinateSystem ()
void setHull (Qwt3D::ParallelEpiped const &h)

Protected Attributes

Qwt3D::CoordinateSystem coordinates_p
Qwt3D::Colordatacolor_p
Qwt3D::Enrichmentuserplotstyle_p
EnrichmentList elist_p
std::vector< GLuint > displaylists_p
Qwt3D::Data * actualData_p
std::vector< double > isolinesZ_p
bool delayisolinecalculation_p


Detailed Description

Plot3D handles all the common features for plotting widgets beyond the low-level extensions of ExtGLWidget - coordinate system, labeling and more. It contains some pure virtual functions and is - in this respect - an abstract base class. It's nevertheless no pure interface. The class provides interfaces for basic data controlled color allocation.

Constructor & Destructor Documentation

Plot3D ( QWidget *  parent = 0,
const QGLWidget *  shareWidget = 0 
)

This should be the first call in your derived classes constructors.

~Plot3D (  )  [virtual]

Release allocated resources


Member Function Documentation

QPixmap renderPixmap ( int  w = 0,
int  h = 0,
bool  useContext = false 
)

Reimplements QGLWidget::renderPixmap.

void updateData (  ) 

Recalculate data.

Update OpenGL data representation

void createCoordinateSystem ( Qwt3D::Triple  beg,
Qwt3D::Triple  end 
)

Create a coordinate system with generating corners beg and end

Qwt3D::CoordinateSystem* coordinates (  )  [inline]

Returns pointer to CoordinateSystem object.

Qwt3D::ColorLegend* legend (  )  [inline]

Returns pointer to ColorLegend object.

void setPlotStyle ( Qwt3D::PLOTSTYLE  val  ) 

Set plotting style.

Set plotstyle for the standard plotting types. An argument of value Qwt3D::USER is ignored.

Qwt3D::Enrichment * setPlotStyle ( Qwt3D::Enrichment const &  obj  ) 

Set plotstyle to Qwt3D::USER and an associated enrichment object.

Qwt3D::PLOTSTYLE plotStyle (  )  const [inline]

Returns plotting style

Qwt3D::Enrichment* userStyle (  )  const [inline]

Returns current Enrichment object used for plotting styles (if set, zero else).

void setShading ( Qwt3D::SHADINGSTYLE  val  ) 

Set shading style.

Set shading style

Qwt3D::SHADINGSTYLE shading (  )  const [inline]

Returns shading style

void setIsolines ( unsigned  steps  )  [inline]

Set number of isolines. The lines are equidistant between minimal and maximal Z value.

void setIsolines ( const std::vector< double > &  val  )  [inline]

Set user-defined isoline vector;.

unsigned isolines (  )  const [inline]

Returns number of isolines.

void setSmoothMesh ( bool  val  )  [inline]

Enables/disables smooth data mesh lines. Default is false.

bool smoothDataMesh (  )  const [inline]

True if mesh antialiasing is on.

void setBackgroundColor ( Qwt3D::RGBA  rgba  ) 

Sets widgets background color.

Qwt3D::RGBA backgroundRGBAColor (  )  const [inline]

Returns the widgets background color.

void setMeshColor ( Qwt3D::RGBA  rgba  ) 

Sets color for data mesh.

Qwt3D::RGBA meshColor (  )  const [inline]

Returns color for data mesh.

void setMeshLineWidth ( double  lw  ) 

Sets line width for data mesh.

double meshLineWidth (  )  const [inline]

Returns line width for data mesh.

void setDataColor ( Color col  ) 

Sets new data color object.

assign a new coloring object for the data.

const Color* dataColor (  )  const [inline]

Returns data color object.

Enrichment * addEnrichment ( Qwt3D::Enrichment const &  e  )  [virtual]

Add an Enrichment.

bool degrade ( Qwt3D::Enrichment e  )  [virtual]

Remove an Enrichment.

Qwt3D::ParallelEpiped hull (  )  const [inline]

Returns rectangular hull.

void showColorLegend ( bool  show  ) 

Show a color legend

void setCoordinateStyle ( Qwt3D::COORDSTYLE  st  ) 

Sets style of coordinate system.

Set style of coordinate system

void setPolygonOffset ( double  val  ) 

Set Polygon offset. The function affects the OpenGL rendering process. Try different values for surfaces with polygons only and with mesh and polygons

double polygonOffset (  )  const [inline]

Returns relative value for polygon offset [0..1].

void setTitlePosition ( double  rely,
double  relx = 0.5,
Qwt3D::ANCHOR  anchor = Qwt3D::TopCenter 
)

Set relative caption position (0.5,0.5) means, the anchor point lies in the center of the screen

void setTitleFont ( const QString &  family,
int  pointSize,
int  weight = QFont::Normal,
bool  italic = false 
)

Set caption font

void setTitleColor ( Qwt3D::RGBA  col  )  [inline]

Set caption color.

void setTitle ( const QString &  title  )  [inline]

Set caption text (one row only).

bool hasData (  )  const [inline]

Returns true if valid data available, false else.

bool save ( QString const &  fileName,
QString const &  format 
) [virtual, slot]

Saves content.

Saves content in one of the registered output formats. To modify the behaviour for more complex output handling use IO::outputHandler.

void paintGL (  )  [protected]

Paint the widgets content.

void resizeGL ( int  w,
int  h 
) [protected]

Set up the OpenGL view port

void calculateHull (  )  [protected, virtual]

Calculates the smallest x-y-z parallelepiped enclosing the data. It can be accessed by hull();

void createCoordinateSystem (  )  [protected]

Create a coordinate system from data


The documentation for this class was generated from the following files:

Generated on Sun Jun 7 00:16:33 2009 for QwtPlot3D API by  doxygen 1.5.8