QwtPlotSpectrogram (3) - Linux Manuals
NAME
QwtPlotSpectrogram -
A plot item, which displays a spectrogram.
SYNOPSIS
#include <qwt_plot_spectrogram.h>
Public Types
enum DisplayMode { ImageMode = 0x01, ContourMode = 0x02 }
typedef QFlags< DisplayMode > DisplayModes
Display modes.
Public Member Functions
QwtPlotSpectrogram (const QString &title=QString::null)
virtual ~QwtPlotSpectrogram ()
Destructor.
void setDisplayMode (DisplayMode, bool on=true)
bool testDisplayMode (DisplayMode) const
void setData (QwtRasterData *data)
const QwtRasterData * data () const
QwtRasterData * data ()
void setColorMap (QwtColorMap *)
const QwtColorMap * colorMap () const
virtual QwtInterval interval (Qt::Axis) const
virtual QRectF pixelHint (const QRectF &) const
Pixel hint.
void setDefaultContourPen (const QColor &, qreal width=0.0, Qt::PenStyle=Qt::SolidLine)
void setDefaultContourPen (const QPen &)
Set the default pen for the contour lines.
QPen defaultContourPen () const
virtual QPen contourPen (double level) const
Calculate the pen for a contour line.
void setConrecFlag (QwtRasterData::ConrecFlag, bool on)
bool testConrecFlag (QwtRasterData::ConrecFlag) const
void setContourLevels (const QList< double > &)
QList< double > contourLevels () const
virtual int rtti () const
virtual void draw (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &rect) const
Draw the spectrogram.
Protected Member Functions
virtual QImage renderImage (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &area, const QSize &imageSize) const
Render an image from data and color map.
virtual QSize contourRasterSize (const QRectF &, const QRect &) const
Return the raster to be used by the CONREC contour algorithm.
virtual QwtRasterData::ContourLines renderContourLines (const QRectF &rect, const QSize &raster) const
virtual void drawContourLines (QPainter *p, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtRasterData::ContourLines &lines) const
void renderTile (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRect &imageRect, QImage *image) const
Render a tile of an image.
Detailed Description
A plot item, which displays a spectrogram.
A spectrogram displays 3-dimensional data, where the 3rd dimension ( the intensity ) is displayed using colors. The colors are calculated from the values using a color map.
On multi-core systems the performance of the image composition can often be improved by dividing the area into tiles - each of them rendered in a different thread ( see QwtPlotItem::setRenderThreadCount() ).
In ContourMode contour lines are painted for the contour levels.
See Also:
- QwtRasterData, QwtColorMap, QwtPlotItem::setRenderThreadCount()
Member Enumeration Documentation
enum QwtPlotSpectrogram::DisplayMode
The display mode controls how the raster data will be represented.See Also:
- setDisplayMode(), testDisplayMode()
Enumerator
- ImageMode
- The values are mapped to colors using a color map.
- ContourMode
- The data is displayed using contour lines.
Constructor & Destructor Documentation
QwtPlotSpectrogram::QwtPlotSpectrogram (const QString &title = QString::null) [explicit]
Sets the following item attributes:- •
- QwtPlotItem::AutoScale: true
- •
- QwtPlotItem::Legend: false
The z value is initialized by 8.0.
Parameters:
- title Title
See Also:
- QwtPlotItem::setItemAttribute(), QwtPlotItem::setZ()
Member Function Documentation
const QwtColorMap * QwtPlotSpectrogram::colorMap () const
Returns:
- Color Map used for mapping the intensity values to colors
See Also:
- setColorMap()
QList< double > QwtPlotSpectrogram::contourLevels () const
Returns:
- Levels of the contour lines.
The levels are sorted in increasing order.
See Also:
- contourLevels(), renderContourLines(), QwtRasterData::contourLines()
QPen QwtPlotSpectrogram::contourPen (doublelevel) const [virtual]
Calculate the pen for a contour line. The color of the pen is the color for level calculated by the color map
Parameters:
- level Contour level
Returns:
- Pen for the contour line
Note:
- contourPen is only used if defaultContourPen().style() == Qt::NoPen
See Also:
- setDefaultContourPen(), setColorMap(), setContourLevels()
QSize QwtPlotSpectrogram::contourRasterSize (const QRectF &area, const QRect &rect) const [protected], [virtual]
Return the raster to be used by the CONREC contour algorithm. A larger size will improve the precision of the CONREC algorithm, but will slow down the time that is needed to calculate the lines.
The default implementation returns rect.size() / 2 bounded to the resolution depending on pixelSize().
Parameters:
-
area Rectangle, where to calculate the contour lines
rect Rectangle in pixel coordinates, where to paint the contour lines
Returns:
- Raster to be used by the CONREC contour algorithm.
Note:
- The size will be bounded to rect.size().
See Also:
- drawContourLines(), QwtRasterData::contourLines()
const QwtRasterData * QwtPlotSpectrogram::data () const
Returns:
- Spectrogram data
See Also:
- setData()
QwtRasterData * QwtPlotSpectrogram::data ()
Returns:
- Spectrogram data
See Also:
- setData()
QPen QwtPlotSpectrogram::defaultContourPen () const
Returns:
- Default contour pen
See Also:
- setDefaultContourPen()
void QwtPlotSpectrogram::draw (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasRect) const [virtual]
Draw the spectrogram.
Parameters:
-
painter Painter
xMap Maps x-values into pixel coordinates.
yMap Maps y-values into pixel coordinates.
canvasRect Contents rectangle of the canvas in painter coordinates
See Also:
- setDisplayMode(), renderImage(), QwtPlotRasterItem::draw(), drawContourLines()
Reimplemented from QwtPlotRasterItem.
void QwtPlotSpectrogram::drawContourLines (QPainter *painter, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtRasterData::ContourLines &contourLines) const [protected], [virtual]
Paint the contour linesParameters:
-
painter Painter
xMap Maps x-values into pixel coordinates.
yMap Maps y-values into pixel coordinates.
contourLines Contour lines
See Also:
- renderContourLines(), defaultContourPen(), contourPen()
QwtInterval QwtPlotSpectrogram::interval (Qt::Axisaxis) const [virtual]
Returns:
- Bounding interval for an axis
The default implementation returns the interval of the associated raster data object.
Parameters:
- axis X, Y, or Z axis
See Also:
- QwtRasterData::interval()
Reimplemented from QwtPlotRasterItem.
QRectF QwtPlotSpectrogram::pixelHint (const QRectF &area) const [virtual]
Pixel hint. The geometry of a pixel is used to calculated the resolution and alignment of the rendered image.
The default implementation returns data()->pixelHint( rect );
Parameters:
- area In most implementations the resolution of the data doesn't depend on the requested area.
Returns:
- Bounding rectangle of a pixel
See Also:
- QwtPlotRasterItem::pixelHint(), QwtRasterData::pixelHint(), render(), renderImage()
Reimplemented from QwtPlotRasterItem.
QwtRasterData::ContourLines QwtPlotSpectrogram::renderContourLines (const QRectF &rect, const QSize &raster) const [protected], [virtual]
Calculate contour linesParameters:
-
rect Rectangle, where to calculate the contour lines
raster Raster, used by the CONREC algorithm
Returns:
- Calculated contour lines
See Also:
- contourLevels(), setConrecFlag(), QwtRasterData::contourLines()
QImage QwtPlotSpectrogram::renderImage (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &area, const QSize &imageSize) const [protected], [virtual]
Render an image from data and color map. For each pixel of area the value is mapped into a color.
Parameters:
-
xMap X-Scale Map
yMap Y-Scale Map
area Requested area for the image in scale coordinates
imageSize Size of the requested image
Returns:
- A QImage::Format_Indexed8 or QImage::Format_ARGB32 depending on the color map.
See Also:
- QwtRasterData::value(), QwtColorMap::rgb(), QwtColorMap::colorIndex()
void QwtPlotSpectrogram::renderTile (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRect &tile, QImage *image) const [protected]
Render a tile of an image. Rendering in tiles can be used to composite an image in parallel threads.
Parameters:
-
xMap X-Scale Map
yMap Y-Scale Map
tile Geometry of the tile in image coordinates
image Image to be rendered
int QwtPlotSpectrogram::rtti () const [virtual]
Returns:
- QwtPlotItem::Rtti_PlotSpectrogram
Reimplemented from QwtPlotItem.
void QwtPlotSpectrogram::setColorMap (QwtColorMap *colorMap)
Change the color mapOften it is useful to display the mapping between intensities and colors as an additional plot axis, showing a color bar.
Parameters:
- colorMap Color Map
See Also:
- colorMap(), QwtScaleWidget::setColorBarEnabled(), QwtScaleWidget::setColorMap()
void QwtPlotSpectrogram::setConrecFlag (QwtRasterData::ConrecFlagflag, boolon)
Modify an attribute of the CONREC algorithm, used to calculate the contour lines.Parameters:
-
flag CONREC flag
on On/Off
See Also:
- testConrecFlag(), renderContourLines(), QwtRasterData::contourLines()
void QwtPlotSpectrogram::setContourLevels (const QList< double > &levels)
Set the levels of the contour linesParameters:
- levels Values of the contour levels
See Also:
- contourLevels(), renderContourLines(), QwtRasterData::contourLines()
Note:
- contourLevels returns the same levels but sorted.
void QwtPlotSpectrogram::setData (QwtRasterData *data)
Set the data to be displayedParameters:
- data Spectrogram Data
See Also:
- data()
void QwtPlotSpectrogram::setDefaultContourPen (const QColor &color, qrealwidth = 0.0, Qt::PenStylestyle = Qt::SolidLine)
Build and assign the default pen for the contour linesIn Qt5 the default pen width is 1.0 ( 0.0 in Qt4 ) what makes it non cosmetic ( see QPen::isCosmetic() ). This method has been introduced to hide this incompatibility.
Parameters:
-
color Pen color
width Pen width
style Pen style
See Also:
- pen(), brush()
void QwtPlotSpectrogram::setDefaultContourPen (const QPen &pen)
Set the default pen for the contour lines. If the spectrogram has a valid default contour pen a contour line is painted using the default contour pen. Otherwise (pen.style() == Qt::NoPen) the pen is calculated for each contour level using contourPen().
See Also:
- defaultContourPen(), contourPen()
void QwtPlotSpectrogram::setDisplayMode (DisplayModemode, boolon = true)
The display mode controls how the raster data will be represented.Parameters:
-
mode Display mode
on On/Off
The default setting enables ImageMode.
See Also:
- DisplayMode, displayMode()
bool QwtPlotSpectrogram::testConrecFlag (QwtRasterData::ConrecFlagflag) const
Test an attribute of the CONREC algorithm, used to calculate the contour lines.Parameters:
- flag CONREC flag
Returns:
- true, is enabled
The default setting enables QwtRasterData::IgnoreAllVerticesOnLevel
See Also:
- setConrecClag(), renderContourLines(), QwtRasterData::contourLines()
bool QwtPlotSpectrogram::testDisplayMode (DisplayModemode) const
The display mode controls how the raster data will be represented.Parameters:
- mode Display mode
Returns:
- true if mode is enabled
Author
Generated automatically by Doxygen for Qwt User's Guide from the source code.