Loading...
Searching...
No Matches
QwtMatrixRasterData Class Reference

A class representing a matrix of values as raster data. More...

`#include <qwt_matrix_raster_data.h>`

Inheritance diagram for QwtMatrixRasterData:

## Public Types

enum | ResampleMode { NearestNeighbour , BilinearInterpolation , BicubicInterpolation }
| Resampling algorithm The default setting is NearestNeighbour;. More...
Public Types inherited from QwtRasterData
enum | Attribute { WithoutGaps = 0x01 }
| Raster data attributes. More...
enum | ConrecFlag { IgnoreAllVerticesOnLevel = 0x01 , IgnoreOutOfRange = 0x02 }
| Flags to modify the contour algorithm. More...
typedef QMap< double, QPolygonF > | ContourLines
| Contour lines.
typedef QFlags< Attribute > | Attributes
typedef QFlags< ConrecFlag > | ConrecFlags

## Public Member Functions

| QwtMatrixRasterData ()
| Constructor.
virtual | ~QwtMatrixRasterData ()
| Destructor.
void | setResampleMode (ResampleMode mode)
| Set the resampling algorithm.
ResampleMode | resampleMode () const
void | setInterval (Qt::Axis, const QwtInterval &)
| Assign the bounding interval for an axis.
virtual QwtInterval | interval (Qt::Axis axis) const override final
void | setValueMatrix (const QVector< double > &values, int numColumns)
| Assign a value matrix.
const QVector< double > | valueMatrix () const
void | setValue (int row, int col, double value)
| Change a single value in the matrix.
int | numColumns () const
int | numRows () const
virtual QRectF | pixelHint (const QRectF &) const override
| Calculate the pixel hint.
virtual double | value (double x, double y) const override
Public Member Functions inherited from QwtRasterData
| QwtRasterData ()
| Constructor.
virtual | ~QwtRasterData ()
| Destructor.
void | setAttribute (Attribute, bool on=true)
bool | testAttribute (Attribute) const
virtual void | initRaster (const QRectF &, const QSize &raster)
| Initialize a raster.
virtual void | discardRaster ()
| Discard a raster.
virtual ContourLines | contourLines (const QRectF &rect, const QSize &raster, const QList< double > &levels, ConrecFlags) const

## Detailed Description

A class representing a matrix of values as raster data.

QwtMatrixRasterData implements an interface for a matrix of equidistant values, that can be used by a QwtPlotRasterItem. It implements a couple of resampling algorithms, to provide values for positions, that or not on the value matrix.

Definition at line 28 of file qwt_matrix_raster_data.h.

## Member Enumeration Documentation

## ResampleMode

enum QwtMatrixRasterData::ResampleMode

Resampling algorithm The default setting is NearestNeighbour;.

Enumerator
NearestNeighbour | Return the value from the matrix, that is nearest to the the requested position.
BilinearInterpolation | Interpolate the value from the distances and values of the 4 surrounding values in the matrix,
BicubicInterpolation | Interpolate the value from the 16 surrounding values in the matrix using hermite bicubic interpolation

Definition at line 35 of file qwt_matrix_raster_data.h.

## Constructor & Destructor Documentation

## QwtMatrixRasterData()

QwtMatrixRasterData::QwtMatrixRasterData | ( |  | ) |

Constructor.

Definition at line 72 of file qwt_matrix_raster_data.cpp.

## ~QwtMatrixRasterData()

QwtMatrixRasterData::~QwtMatrixRasterData | ( |  | ) |

virtual

Destructor.

Definition at line 79 of file qwt_matrix_raster_data.cpp.

## Member Function Documentation

## interval()

QwtInterval QwtMatrixRasterData::interval | ( | Qt::Axis | axis | ) | const

final override virtual

Returns
  Bounding interval for an axis

See also
  setInterval

Implements QwtRasterData.

Definition at line 134 of file qwt_matrix_raster_data.cpp.

## numColumns()

int QwtMatrixRasterData::numColumns | ( |  | ) | const

Returns
  Number of columns of the value matrix

See also
  valueMatrix(), numRows(), setValueMatrix()

Definition at line 195 of file qwt_matrix_raster_data.cpp.

## numRows()

int QwtMatrixRasterData::numRows | ( |  | ) | const

Returns
  Number of rows of the value matrix

See also
  valueMatrix(), numColumns(), setValueMatrix()

Definition at line 204 of file qwt_matrix_raster_data.cpp.

## pixelHint()

QRectF QwtMatrixRasterData::pixelHint | ( | const QRectF & | area | ) | const

override virtual

Calculate the pixel hint.

pixelHint() returns the geometry of a pixel, that can be used to calculate the resolution and alignment of the plot item, that is representing the data.

- NearestNeighbour
  pixelHint() returns the surrounding pixel of the top left value in the matrix.
- BilinearInterpolation
  Returns an empty rectangle recommending to render in target device ( f.e. screen ) resolution.

Parameters

  area | Requested area, ignored

Returns
  Calculated hint

See also
  ResampleMode, setMatrix(), setInterval()

Reimplemented from QwtRasterData.

Definition at line 229 of file qwt_matrix_raster_data.cpp.

## resampleMode()

QwtMatrixRasterData::ResampleMode QwtMatrixRasterData::resampleMode | ( |  | ) | const

Returns
  resampling algorithm

See also
  setResampleMode(), value()

Definition at line 99 of file qwt_matrix_raster_data.cpp.

## setInterval()

void QwtMatrixRasterData::setInterval | ( | Qt::Axis | axis,
|  | const QwtInterval & | interval )

Assign the bounding interval for an axis.

Setting the bounding intervals for the X/Y axis is mandatory to define the positions for the values of the value matrix. The interval in Z direction defines the possible range for the values in the matrix, what is f.e used by QwtPlotSpectrogram to map values to colors. The Z-interval might be the bounding interval of the values in the matrix, but usually it isn't. ( f.e a interval of 0.0-100.0 for values in percentage )

Parameters

  axis | X, Y or Z axis
  interval | Interval

See also
  QwtRasterData::interval(), setValueMatrix()

Definition at line 120 of file qwt_matrix_raster_data.cpp.

## setResampleMode()

void QwtMatrixRasterData::setResampleMode | ( | ResampleMode | mode | ) |

Set the resampling algorithm.

Parameters

  mode | Resampling mode

See also
  resampleMode(), value()

Definition at line 90 of file qwt_matrix_raster_data.cpp.

## setValue()

void QwtMatrixRasterData::setValue | ( | int | row,
|  | int | col,
|  | double | value )

Change a single value in the matrix.

Parameters

  row | Row index
  col | Column index
  value | New value

See also
  value(), setValueMatrix()

Definition at line 181 of file qwt_matrix_raster_data.cpp.

## setValueMatrix()

void QwtMatrixRasterData::setValueMatrix | ( | const QVector< double > & | values,
|  | int | numColumns )

Assign a value matrix.

The positions of the values are calculated by dividing the bounding rectangle of the X/Y intervals into equidistant rectangles ( pixels ). Each value corresponds to the center of a pixel.

Parameters

  values | Vector of values
  numColumns | Number of columns

See also
  valueMatrix(), numColumns(), numRows(), setInterval()()

Definition at line 155 of file qwt_matrix_raster_data.cpp.

## value()

double QwtMatrixRasterData::value | ( | double | x,
|  | double | y ) const

override virtual

Returns
  the value at a raster position

Parameters

  x | X value in plot coordinates
  y | Y value in plot coordinates

See also
  ResampleMode

Implements QwtRasterData.

Definition at line 256 of file qwt_matrix_raster_data.cpp.

## valueMatrix()

const QVector< double > QwtMatrixRasterData::valueMatrix | ( |  | ) | const

Returns
  Value matrix

See also
  setValueMatrix(), numColumns(), numRows(), setInterval()

Definition at line 167 of file qwt_matrix_raster_data.cpp.