Wt
4.11.0
|
Class representing a collection of points for on a 3D chart. More...
#include <WScatterData.h>
Public Member Functions | |
WScatterData (std::shared_ptr< WAbstractItemModel > model) | |
Constructor. | |
void | setDroplinesEnabled (bool enable=true) |
Enables or disables droplines for all points. | |
bool | droplinesEnabled () const |
Returns whether droplines are enabled. | |
void | setDroplinesPen (const WPen &pen) |
Sets the pen that is used to draw droplines. | |
WPen | droplinesPen () const |
Returns the pen that is used to draw droplines. | |
void | setXSeriesColumn (int columnNumber) |
Sets the column-index from the model that is used for the x-coordinate of all points. | |
int | XSeriesColumn () const |
Returns the column-index from the model that is used for the x-coordinate of all points. | |
void | setYSeriesColumn (int columnNumber) |
Sets the column-index from the model that is used for the y-coordinate of all points. | |
int | YSeriesColumn () const |
Returns the column-index from the model that is used for the y-coordinate of all points. | |
void | setZSeriesColumn (int columnNumber) |
Sets the column-index from the model that is used for the z-coordinate of all points. | |
int | ZSeriesColumn () const |
Returns the column-index from the model that is used for the z-coordinate of all points. | |
void | setColorColumn (int columnNumber, ItemDataRole role=ItemDataRole::Display) |
Configure a column in the model to be used for the color of the points. | |
void | setSizeColumn (int columnNumber, ItemDataRole role=ItemDataRole::Display) |
Configure a column in the model to be used for the size of the points. | |
std::vector< WPointSelection > | pickPoints (int x, int y, int radius) const |
Pick points on this WScatterData using a single pixel. | |
std::vector< WPointSelection > | pickPoints (int x1, int y1, int x2, int y2) const |
Pick points on this WScatterData inside of a rectangle. | |
virtual double | minimum (Axis axis) const override |
Returns the computed minimum value of this dataseries along the given axis. | |
virtual double | maximum (Axis axis) const override |
Returns the computed maximum value of this dataseries along the given axis. | |
virtual void | initializeGL () override |
Initialize GL resources. | |
virtual void | paintGL () const override |
Update the client-side painting function. | |
virtual void | updateGL () override |
Update GL resources. | |
virtual void | resizeGL () override |
Act on resize events. | |
virtual void | deleteAllGLResources () override |
Delete GL resources. | |
Public Member Functions inherited from Wt::Chart::WAbstractDataSeries3D | |
WAbstractDataSeries3D (std::shared_ptr< WAbstractItemModel > model) | |
Constructor. | |
void | setTitle (const WString &name) |
Sets the title of this dataseries. | |
const WString & | title () const |
Returns the title of this dataseries. | |
void | setModel (const std::shared_ptr< WAbstractItemModel > &model) |
Sets a model from which the dataseries gets its data. | |
std::shared_ptr< WAbstractItemModel > | model () const |
Returns a pointer to the model used by this dataseries. | |
const WCartesian3DChart * | chart () const |
Returns a const pointer to the WCartesian3DChart on which the dataseries is drawn. | |
void | setPointSize (double size) |
Sets the pointsize for drawing this dataseries. | |
double | pointSize () const |
Returns the pointsize for drawing this dataseries. | |
void | setPointSprite (const std::string &image) |
Set the point sprite used for drawing this dataseries. | |
const std::string & | pointSprite () const |
Returns the point sprite used for drawing this dataseries. | |
void | setColorMap (const std::shared_ptr< WAbstractColorMap > &colormap) |
Sets the colormap for this dataseries. | |
const WAbstractColorMap * | colorMap () const |
Returns the colormap used by this dataseries. | |
void | setColorMapVisible (bool enabled=true) |
Sets whether the colormap that is used should be shown alongside the chart in the form of a legend. | |
bool | colorMapVisible () const |
Returns whether the colormap is shown alongside the chart in the form of a legend. | |
void | setColorMapSide (Side side) |
Sets whether the colormap is shown on the left or right. | |
Side | colorMapSide () const |
Returns on which side the colormap is shown. | |
void | setLegendEnabled (bool enabled=true) |
Sets whether this dataseries is included in the chart-legend. | |
bool | isLegendEnabled () const |
Returns whether this dataseries is included in the chart-legend. | |
void | setHidden (bool enabled=true) |
Sets if this dataseries is hidden. | |
bool | isHidden () const |
Returns if this dataseries is hidden. | |
Public Member Functions inherited from Wt::WObject | |
void | addChild (std::unique_ptr< WObject > child) |
Add a child WObject whose lifetime is determined by this WObject. | |
template<typename Child > | |
Child * | addChild (std::unique_ptr< Child > child) |
Add a child WObject, returning a raw pointer. | |
std::unique_ptr< WObject > | removeChild (WObject *child) |
Remove a child WObject, so its lifetime is no longer determined by this WObject. | |
template<typename Child > | |
std::unique_ptr< Child > | removeChild (Child *child) |
Remove a child WObject, so its lifetime is no longer determined by this WObject. | |
virtual const std::string | id () const |
Returns the (unique) identifier for this object. | |
virtual void | setObjectName (const std::string &name) |
Sets an object name. | |
virtual std::string | objectName () const |
Returns the object name. | |
void | resetLearnedSlots () |
Resets learned stateless slot implementations. | |
template<class T > | |
void | resetLearnedSlot (void(T::*method)()) |
Resets a learned stateless slot implementation. | |
template<class T > | |
WStatelessSlot * | implementStateless (void(T::*method)()) |
Declares a slot to be stateless and learn client-side behaviour on first invocation. | |
template<class T > | |
WStatelessSlot * | implementStateless (void(T::*method)(), void(T::*undoMethod)()) |
Declares a slot to be stateless and learn client-side behaviour in advance. | |
void | isNotStateless () |
Marks the current function as not stateless. | |
template<class T > | |
WStatelessSlot * | implementJavaScript (void(T::*method)(), const std::string &jsCode) |
Provides a JavaScript implementation for a method. | |
Public Member Functions inherited from Wt::Core::observable | |
observable () noexcept | |
Default constructor. | |
virtual | ~observable () |
Destructor. | |
template<typename... Args, typename C > | |
auto | bindSafe (void(C::*method)(Args...)) noexcept |
Protects a method call against object destruction. | |
template<typename... Args, typename C > | |
auto | bindSafe (void(C::*method)(Args...) const) const noexcept |
Protects a const method call against object destruction. | |
template<typename Function > | |
auto | bindSafe (const Function &function) noexcept |
Protects a function against object destruction. | |
Additional Inherited Members | |
Public Types inherited from Wt::WObject | |
typedef void(WObject::* | Method) () |
Typedef for a WObject method without arguments. | |
Protected Member Functions inherited from Wt::WObject | |
virtual WStatelessSlot * | getStateless (Method method) |
On-demand stateless slot implementation. | |
Class representing a collection of points for on a 3D chart.
General information can be found at WAbstractDataSeries3D. The model should be structured as a table where every row represents a point. In the simplest case, there are three columns representing the x-, y- and z-values. By default, this is column 0 for X, column 1 for Y and column 2 for Z. It is also possible to provide an additional column containing information on the color for each point. The same is possible for the size. Color-information in the model should be present as a WColor.
If these extra columns are not included, the ItemDataRole::MarkerBrushColor and ItemDataRole::MarkerScaleFactor can still be used to style individual points. These dataroles should be set on the values in the column containing the z-values.
The figure below shows an upward spiral of points, with droplines enabled and a pointsize of 5 pixels.
|
overridevirtual |
Delete GL resources.
This function is called by updateGL() in the chart to which this dataseries was added.
Implements Wt::Chart::WAbstractDataSeries3D.
bool Wt::Chart::WScatterData::droplinesEnabled | ( | ) | const |
Returns whether droplines are enabled.
WPen Wt::Chart::WScatterData::droplinesPen | ( | ) | const |
Returns the pen that is used to draw droplines.
Initialize GL resources.
This function is called by initializeGL() in the chart to which this dataseries was added.
Implements Wt::Chart::WAbstractDataSeries3D.
Returns the computed maximum value of this dataseries along the given axis.
Implements Wt::Chart::WAbstractDataSeries3D.
Returns the computed minimum value of this dataseries along the given axis.
Implements Wt::Chart::WAbstractDataSeries3D.
|
overridevirtual |
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.
std::vector< WPointSelection > Wt::Chart::WScatterData::pickPoints | ( | int | x, |
int | y, | ||
int | radius | ||
) | const |
Pick points on this WScatterData using a single pixel.
x,y are the screen coordinates of the pixel from the top left of the chart, and radius is the radius in pixels around that pixel. All points around the ray projected through the pixel within the given radius will be returned.
std::vector< WPointSelection > Wt::Chart::WScatterData::pickPoints | ( | int | x1, |
int | y1, | ||
int | x2, | ||
int | y2 | ||
) | const |
Pick points on this WScatterData inside of a rectangle.
The screen coordinates (x1, y1) and (x2, y2) from the top left of the chart define a rectangle within which the points should be selected.
|
overridevirtual |
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::WScatterData::setColorColumn | ( | int | columnNumber, |
ItemDataRole | role = ItemDataRole::Display |
||
) |
Configure a column in the model to be used for the color of the points.
By default, the color-column is set to -1. This means there is no column which specifies color-values. Also, the basic mechanism of using the ItemDataRole::MarkerBrushColor (if present) is then active. The Z-seriescolumn is checked for the presence of this Role.
Enables or disables droplines for all points.
Enabling droplines will cause a line to be drawn from every point to the the ground-plane of the chart's plotcube. By default the droplines are disabled.
Sets the pen that is used to draw droplines.
The default pen is a default constructed WPen.
Note: only the width and color of the pen are used.
void Wt::Chart::WScatterData::setSizeColumn | ( | int | columnNumber, |
ItemDataRole | role = ItemDataRole::Display |
||
) |
Configure a column in the model to be used for the size of the points.
By default, the size-column is set to -1. This means there is no column which specifies size-values. Also, the basic mechanism of using the ItemDataRole::MarkerScaleFactor (if present) is then active. The Z-seriescolumn is checked for the presence of this Role.
Sets the column-index from the model that is used for the x-coordinate of all points.
The default X column index is 0.
Sets the column-index from the model that is used for the y-coordinate of all points.
The default X column index is 1.
Sets the column-index from the model that is used for the z-coordinate of all points.
The default Z column index is 2.
Note that this column is also used to check for a ItemDataRole::MarkerBrushColor and a ItemDataRole::MarkerScaleFactor is no color-column or size-column are set.
|
overridevirtual |
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.
Implements Wt::Chart::WAbstractDataSeries3D.
int Wt::Chart::WScatterData::XSeriesColumn | ( | ) | const |
Returns the column-index from the model that is used for the x-coordinate of all points.
int Wt::Chart::WScatterData::YSeriesColumn | ( | ) | const |
Returns the column-index from the model that is used for the y-coordinate of all points.
int Wt::Chart::WScatterData::ZSeriesColumn | ( | ) | const |
Returns the column-index from the model that is used for the z-coordinate of all points.