Wt  3.3.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator
Public Member Functions
Wt::Chart::WAbstractGridData Class Reference

Class representing grid-based data for on a 3D chart. More...

Inheritance diagram for Wt::Chart::WAbstractGridData:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 WAbstractGridData (WAbstractItemModel *model)
 Constructor.
virtual double minimum (Axis axis) const =0
 Returns the computed minimum value of this dataseries along the given axis.
virtual double maximum (Axis axis) const =0
 Returns the computed maximum value of this dataseries along the given axis.
void setType (Series3DType type)
 Sets the type of representation that will be used for the data.
virtual Series3DType type () const
 Returns the type of representation that will be used for the data.
void setSurfaceMeshEnabled (bool enabled=true)
 Enables or disables a mesh for when a surface is drawn.
bool isSurfaceMeshEnabled ()
 Returns whether the surface-mesh is enabled for this dataseries.
void setBarWidth (double xWidth, double yWidth)
 Sets the bar-width.
double barWidthX ()
 Returns the bar-width in the X-axis direction.
double barWidthY ()
 Returns the bar-width in the Y-axis direction.
void setPen (const WPen &pen)
 Sets the WPen that is used for drawing the mesh.
WPen pen () const
 Returns the pen that is used for drawing the mesh.
std::vector< WSurfaceSelectionpickSurface (int x, int y) const
 Find all points on the surface that are projected to the given pixel.
WBarSelection pickBar (int x, int y) const
 Return the bar that is closest to the look point at the given pixel.
void setIsoLevels (const std::vector< double > &isoLevels)
 Set isoline levels.
const std::vector< double > & isoLevels () const
 Get all of the isoline levels.
void setIsoColorMap (WAbstractColorMap *colormap)
 Set the color map for the isolines.
const WAbstractColorMapisoColorMap () const
 Get the color map for the isolines.
void setClippingMin (Axis axis, float v)
 Set the value below which the data series will be clipped on the given axis.
float clippingMin (Axis axis) const
 Gets the value below which the data series will be clipped on the given axis.
JSlotchangeClippingMin (Axis axis)
 JSlot to change the value below which the data series will be clipped on the given axis.
void setClippingMax (Axis axis, float v)
 Set the value above which the data series will be clipped on the given axis.
float clippingMax (Axis axis) const
 Gets the value above which the data series will be clipped on the given axis.
JSlotchangeClippingMax (Axis axis)
 JSlot to change the value above which the data series will be clipped on the given axis.
void setClippingLinesEnabled (bool clippingLinesEnabled)
 Sets whether clipping lines should be drawn where a surface is clipped.
bool clippingLinesEnabled () const
 Returns whether clipping lines are enabled.
void setClippingLinesColor (WColor color)
 Sets the color of the clipping lines.
WColor clippingLinesColor () const
 Gets the color of the clipping lines.
virtual void initializeGL ()
 Initialize GL resources.
virtual void paintGL () const
 Update the client-side painting function.
virtual void updateGL ()
 Update GL resources.
virtual void resizeGL ()
 Act on resize events.
virtual void deleteAllGLResources ()
 Delete GL resources.

Detailed Description

Class representing grid-based data for on a 3D chart.

General information can be found at WAbstractDataSeries3D. Information on how the model is structured is provided in the subclasses. GridData can be represented in three ways. This is indicated by Series3DType and can be either PointSeries3D, SurfaceSeries3D or BarSeries3D. Note that points and surfaces can only be added to charts of type ScatterPlot, while bars can only be added to charts of type CategoryChart.

When the data is shown as a surface, a mesh can be added to the surface. This draws lines over the surface at the positions of the x- and y-values. For bar-series data, it is possible to adjust the width of the bars in both directions.

The three types of data-representation are illustrated below.

gridDataTypes.png
The three representation types of grid-based data

Member Function Documentation

Returns the bar-width in the X-axis direction.

See also:
setBarWidth()

Returns the bar-width in the Y-axis direction.

See also:
setBarWidth()

JSlot to change the value above which the data series will be clipped on the given axis.

The JSlot takes one extra argument: the value to clip below.

The jsRef() of this JSlot is only valid when this WAbstractGridData has been added to a WCartesian3DChart. If this WAbstractGridData moves to another WCartesian3DChart, the jsRef() of the JSlot changes.

See also:
setClippingMax()

JSlot to change the value below which the data series will be clipped on the given axis.

The JSlot takes one extra argument: the value to clip below.

The jsRef() of this JSlot is only valid when this WAbstractGridData has been added to a WCartesian3DChart. If this WAbstractGridData moves to another WCartesian3DChart, the jsRef() of the JSlot changes.

See also:
setClippingMin()

Gets the color of the clipping lines.

See also:
setClippingLinesColor(), setClippingLinesEnabled()

Returns whether clipping lines are enabled.

See also:
setClippingLinesEnabled()

Gets the value above which the data series will be clipped on the given axis.

See also:
setClippingMax()

Gets the value below which the data series will be clipped on the given axis.

See also:
setClippingMin()

Delete GL resources.

This function is called by updateGL() in the chart to which this dataseries was added.

Implements Wt::Chart::WAbstractDataSeries3D.

Initialize GL resources.

This function is called by initializeGL() in the chart to which this dataseries was added.

Implements Wt::Chart::WAbstractDataSeries3D.

Get the color map for the isolines.

See also:
setIsoColorMap()
const std::vector< double > & Wt::Chart::WAbstractGridData::isoLevels ( ) const

Get all of the isoline levels.

See also:
addIsoLevel()

Returns whether the surface-mesh is enabled for this dataseries.

See also:
setSurfaceMeshEnabled()
virtual double Wt::Chart::WAbstractGridData::maximum ( Axis  axis) const [pure virtual]

Returns the computed maximum value of this dataseries along the given axis.

See also:
minimum()

Implements Wt::Chart::WAbstractDataSeries3D.

Implemented in Wt::Chart::WGridData, and Wt::Chart::WEquidistantGridData.

virtual double Wt::Chart::WAbstractGridData::minimum ( Axis  axis) const [pure virtual]

Returns the computed minimum value of this dataseries along the given axis.

See also:
maximum()

Implements Wt::Chart::WAbstractDataSeries3D.

Implemented in Wt::Chart::WGridData, and Wt::Chart::WEquidistantGridData.

void Wt::Chart::WAbstractGridData::paintGL ( ) const [virtual]

Update the client-side painting function.

This function is called by paintGL() in the chart to which this dataseries was added.

Implements Wt::Chart::WAbstractDataSeries3D.

Returns the pen that is used for drawing the mesh.

See also:
setPen()

Return the bar that is closest to the look point at the given pixel.

A ray is cast from the given pixel's x,y position (from the top left of the chart, in screen coordinates), and the closest bar on this WAbstractGridData is returned, along with its distance from the look point.

Note that if this WAbstractGridData is hidden, this method still returns the closest bar as if it was visible. Also, if multiple bars are on the same bar chart, the bar that is returned may be behind another data series. Use the distance field of the returned WBarSelection to determine which data series is in front from the given angle.

If there is no bar at the given pixel, then a selection with an invalid WModelIndex is returned. The distance is then set to positive infinity.

std::vector< WSurfaceSelection > Wt::Chart::WAbstractGridData::pickSurface ( int  x,
int  y 
) const

Find all points on the surface that are projected to the given pixel.

A ray is cast from the given pixel's x,y position (from the top left of the chart, in screen coordinates) and every intersection with the surface is returned, along with its distance from the look point. Note that the coordinates of the intersection points are interpolated between the data points that make up the surface.

Act on resize events.

This function is called by resizeGL() in the chart to which this dataseries was added.

Implements Wt::Chart::WAbstractDataSeries3D.

void Wt::Chart::WAbstractGridData::setBarWidth ( double  xWidth,
double  yWidth 
)

Sets the bar-width.

This option only takes effect when the type of this WGridData is BarSeries3D. The values provided should be between 0 and 1, where 1 lets the bars each take up 1/(nb of x/y-values) of the axis.

The default bar-width is 0.5 in both directions.

Sets the color of the clipping lines.

See also:
setClippingLinesEnabled()
void Wt::Chart::WAbstractGridData::setClippingLinesEnabled ( bool  clippingLinesEnabled)

Sets whether clipping lines should be drawn where a surface is clipped.

Clipping lines are disabled by default. Note that rendering will be significantly slower when enabled.

void Wt::Chart::WAbstractGridData::setClippingMax ( Axis  axis,
float  v 
)

Set the value above which the data series will be clipped on the given axis.

This only affects data series whose type is SurfaceSeries3D.

void Wt::Chart::WAbstractGridData::setClippingMin ( Axis  axis,
float  v 
)

Set the value below which the data series will be clipped on the given axis.

This only affects data series whose type is SurfaceSeries3D.

Set the color map for the isolines.

When no color map is defined for the isolines, i.e. isoColorMap() is set to NULL, the color map of this WAbstractGridData will be used.

The isolines are only drawn if the type is SurfaceSeries3D.

If the colormap has no parent yet, then ownership is transferred to this WAbstractGridData, and thus the validator will be deleted together with the WAbstractGridData.

See also:
addIsoLevel(), setColorMap()
void Wt::Chart::WAbstractGridData::setIsoLevels ( const std::vector< double > &  isoLevels)

Set isoline levels.

Isolines are drawn on the top or ground plane of the chart. Only applies if the type is SurfaceSeries3D.

The isoline levels are set in the coordinate system of the item model.

Sets the WPen that is used for drawing the mesh.

Used when drawing the mesh on a surface or the lines around bars. The default is a default constructed WPen (black and one pixel wide).

Note: only the width and color of this WPen are used.

See also:
setSurfaceMeshEnabled()

Enables or disables a mesh for when a surface is drawn.

The default value is false. This option only takes effect when the type of this WGridData is SurfaceSeries3D. The mesh is drawn at the position of the x-axis and y-axis values.

Sets the type of representation that will be used for the data.

All representations in Series3DType are possible for the data. Note that PointSeries3D and SurfaceSeries3D can only be used on a chart that is configured as a ScatterPlot and BarSeries3D can only be used on a chart that is configured to be a CategoryChart.

The default value is PointSeries3D.

virtual Series3DType Wt::Chart::WAbstractGridData::type ( ) const [virtual]

Returns the type of representation that will be used for the data.

See also:
setType()

Update GL resources.

This function is called by updateGL() in the chart to which this dataseries was added. Before this function is called, deleteAllGLResources() is called.

See also:
deleteAllGLResources()

Implements Wt::Chart::WAbstractDataSeries3D.

 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator

Generated on Tue Mar 22 2016 for the C++ Web Toolkit (Wt) by doxygen 1.7.6.1