|
QWT API (English) 7.3.0
Qt Widget Library for Technical Applications - English API Documentation
|
Synthetic point data. More...
#include <qwt_point_data.h>
Public Member Functions | |
| QwtSyntheticPointData (size_t size, const QwtInterval &=QwtInterval()) | |
| Constructor. | |
| void | setSize (size_t size) |
| Change the number of points. | |
| virtual size_t | size () const override |
| Get the number of points. | |
| void | setInterval (const QwtInterval &) |
| Set the bounding interval. | |
| QwtInterval | interval () const |
| Get the bounding interval. | |
| virtual QRectF | boundingRect () const override |
| Calculate the bounding rectangle. | |
| virtual QPointF | sample (size_t index) const override |
| Calculate the point from an index. | |
| virtual double | y (double x) const =0 |
| virtual double | x (size_t index) const |
| Calculate a x-value from an index. | |
| virtual void | setRectOfInterest (const QRectF &) override |
| Set the "rectangle of interest". | |
| QRectF | rectOfInterest () const |
| Get the "rectangle of interest". | |
Public Member Functions inherited from QwtPointSeriesData | |
| QwtPointSeriesData (const QVector< QPointF > &=QVector< QPointF >()) | |
| Constructor. | |
Public Member Functions inherited from QwtArraySeriesData< QPointF > | |
| QwtArraySeriesData () | |
| Constructor. | |
| QwtArraySeriesData (const QVector< QPointF > &samples) | |
| Constructor. | |
| QwtArraySeriesData (QVector< QPointF > &&samples) | |
| void | setSamples (const QVector< QPointF > &samples) |
| Assign an array of samples. | |
| void | setSamples (QVector< QPointF > &&samples) |
| const QVector< QPointF > | samples () const |
Public Member Functions inherited from QwtSeriesData< T > | |
| QwtSeriesData () | |
| Constructor. | |
| virtual | ~QwtSeriesData () |
| Destructor. | |
Additional Inherited Members | |
Protected Attributes inherited from QwtArraySeriesData< QPointF > | |
| QVector< QPointF > | m_samples |
| Vector of samples. | |
Protected Attributes inherited from QwtSeriesData< T > | |
| QRectF | cachedBoundingRect |
| Can be used to cache a calculated bounding rectangle. | |
Synthetic point data.
QwtSyntheticPointData provides a fixed number of points for an interval. The points are calculated in equidistant steps in x-direction.
If the interval is invalid, the points are calculated for the "rectangle of interest", what normally is the displayed area on the plot canvas. In this mode you get different levels of detail, when zooming in/out.
The following example shows how to implement a sinus curve.
| QwtSyntheticPointData::QwtSyntheticPointData | ( | size_t | size, |
| const QwtInterval & | interval = QwtInterval() |
||
| ) |
Constructor.
| [in] | size | Number of points |
| [in] | interval | Bounding interval for the points |
|
overridevirtual |
Calculate the bounding rectangle.
This implementation iterates over all points, which could often be implemented much faster using the characteristics of the series. When there are many points it is recommended to overload and reimplement this method using the characteristics of the series (if possible).
Reimplemented from QwtPointSeriesData.
| QwtInterval QwtSyntheticPointData::interval | ( | ) | const |
| QRectF QwtSyntheticPointData::rectOfInterest | ( | ) | const |
|
overridevirtual |
Calculate the point from an index.
| [in] | index | Index |
Reimplemented from QwtArraySeriesData< QPointF >.
| void QwtSyntheticPointData::setInterval | ( | const QwtInterval & | interval | ) |
|
overridevirtual |
Set the "rectangle of interest".
QwtPlotSeriesItem defines the current area of the plot canvas as "rect of interest" ( QwtPlotSeriesItem::updateScaleDiv() ). If interval().isValid() == false the x values are calculated in the interval rect.left() -> rect.right().
| [in] | rect | Rectangle of interest |
Reimplemented from QwtSeriesData< T >.
| void QwtSyntheticPointData::setSize | ( | size_t | size | ) |
|
overridevirtual |
Get the number of points.
Reimplemented from QwtArraySeriesData< QPointF >.
|
virtual |
Calculate a x-value from an index.
x values are calculated by dividing an interval into equidistant steps. If !interval().isValid() the interval is calculated from the "rectangle of interest".
| [in] | index | Index of the requested point |