QWT 7.0.1
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Protected Member Functions | List of all members
QwtPolarSpectrogram Class Reference

An item, which displays a spectrogram. More...

#include <qwt_polar_spectrogram.h>

Inheritance diagram for QwtPolarSpectrogram:
QwtPolarItem

Classes

class  PrivateData
 
class  TileInfo
 

Public Types

enum  PaintAttribute { ApproximatedAtan = 0x01 }
 Attributes to modify the drawing algorithm. More...
 
- Public Types inherited from QwtPolarItem
enum  RttiValues {
  Rtti_PolarItem = 0 , Rtti_PolarGrid , Rtti_PolarMarker , Rtti_PolarCurve ,
  Rtti_PolarSpectrogram , Rtti_PolarUserItem = 1000
}
 Runtime type information. More...
 
enum  ItemAttribute { Legend = 0x01 , AutoScale = 0x02 }
 Plot Item Attributes. More...
 
enum  RenderHint { RenderAntialiased = 0x01 }
 Render hints. More...
 

Public Member Functions

 QwtPolarSpectrogram ()
 Constructor.
 
virtual ~QwtPolarSpectrogram ()
 Destructor.
 
void setData (QwtRasterData *data)
 Set the data to be displayed.
 
const QwtRasterDatadata () const
 
void setColorMap (QwtColorMap *)
 Change the color map.
 
const QwtColorMapcolorMap () const
 
void setPaintAttribute (PaintAttribute, bool on=true)
 Specify an attribute how to draw the curve.
 
bool testPaintAttribute (PaintAttribute) const
 
virtual int rtti () const QWT_OVERRIDE
 
virtual void draw (QPainter *painter, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QPointF &pole, double radius, const QRectF &canvasRect) const QWT_OVERRIDE
 Draw the spectrogram.
 
virtual QwtInterval boundingInterval (int scaleId) const QWT_OVERRIDE
 Interval, that is necessary to display the item This interval can be useful for operations like clipping or autoscaling.
 
- Public Member Functions inherited from QwtPolarItem
 QwtPolarItem (const QwtText &title=QwtText())
 Constructor.
 
virtual ~QwtPolarItem ()
 Destroy the QwtPolarItem.
 
void attach (QwtPolarPlot *plot)
 Attach the item to a plot.
 
void detach ()
 This method detaches a QwtPolarItem from the QwtPolarPlot it has been associated with.
 
QwtPolarPlotplot () const
 
void setTitle (const QString &title)
 Set a new title.
 
void setTitle (const QwtText &title)
 Set a new title.
 
const QwtTexttitle () const
 
void setItemAttribute (ItemAttribute, bool on=true)
 Toggle an item attribute.
 
bool testItemAttribute (ItemAttribute) const
 Test an item attribute.
 
void setRenderHint (RenderHint, bool on=true)
 Toggle an render hint.
 
bool testRenderHint (RenderHint) const
 Test a render hint.
 
void setRenderThreadCount (uint numThreads)
 On multi core systems rendering of certain plot item ( f.e QwtPolarSpectrogram ) can be done in parallel in several threads.
 
uint renderThreadCount () const
 
double z () const
 Plot items are painted in increasing z-order.
 
void setZ (double z)
 Set the z value.
 
void show ()
 Show the item.
 
void hide ()
 Hide the item.
 
virtual void setVisible (bool)
 Show/Hide the item.
 
bool isVisible () const
 
virtual void itemChanged ()
 Update the legend and call QwtPolarPlot::autoRefresh for the parent plot.
 
virtual void legendChanged ()
 Update the legend of the parent plot.
 
virtual void updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &, const QwtInterval &)
 Update the item to changes of the axes scale division.
 
virtual int marginHint () const
 Some items like to display something (f.e.
 
void setLegendIconSize (const QSize &)
 Set the size of the legend icon.
 
QSize legendIconSize () const
 
virtual QList< QwtLegendDatalegendData () const
 Return all information, that is needed to represent the item on the legend.
 
virtual QwtGraphic legendIcon (int index, const QSizeF &) const
 

Protected Member Functions

virtual QImage renderImage (const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QPointF &pole, const QRect &rect) const
 Render an image from the data and color map.
 
virtual void renderTile (const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QPointF &pole, const QPoint &imagePos, const QRect &tile, QImage *image) const
 Render a sub-rectangle of an image.
 

Detailed Description

An 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.

See also
QwtRasterData, QwtColorMap

Member Enumeration Documentation

◆ PaintAttribute

Attributes to modify the drawing algorithm.

The default setting disables ApproximatedAtan

See also
setPaintAttribute(), testPaintAttribute()
Enumerator
ApproximatedAtan 

Use qwtFastAtan2 instead of atan2 for translating widget into polar coordinates.

Member Function Documentation

◆ boundingInterval()

QwtInterval QwtPolarSpectrogram::boundingInterval ( int  scaleId) const
virtual

Interval, that is necessary to display the item This interval can be useful for operations like clipping or autoscaling.

Parameters
scaleIdScale index
Returns
bounding interval ( == position )
See also
position()

Reimplemented from QwtPolarItem.

◆ colorMap()

const QwtColorMap * QwtPolarSpectrogram::colorMap ( ) const
Returns
Color Map used for mapping the intensity values to colors
See also
setColorMap()

◆ data()

const QwtRasterData * QwtPolarSpectrogram::data ( ) const
Returns
Spectrogram data
See also
setData()

◆ draw()

void QwtPolarSpectrogram::draw ( QPainter *  painter,
const QwtScaleMap azimuthMap,
const QwtScaleMap radialMap,
const QPointF &  pole,
double  radius,
const QRectF &  canvasRect 
) const
virtual

Draw the spectrogram.

Parameters
painterPainter
azimuthMapMaps azimuth values to values related to 0.0, M_2PI
radialMapMaps radius values into painter coordinates.
polePosition of the pole in painter coordinates
radiusRadius of the complete plot area in painter coordinates
canvasRectContents rect of the canvas in painter coordinates

Implements QwtPolarItem.

◆ renderImage()

QImage QwtPolarSpectrogram::renderImage ( const QwtScaleMap azimuthMap,
const QwtScaleMap radialMap,
const QPointF &  pole,
const QRect &  rect 
) const
protectedvirtual

Render an image from the data and color map.

The area is translated into a rect of the paint device. For each pixel of this rect the intensity is mapped into a color.

Parameters
azimuthMapMaps azimuth values to values related to 0.0, M_2PI
radialMapMaps radius values into painter coordinates.
polePosition of the pole in painter coordinates
rectTarget rectangle of the image in painter coordinates
Returns
A QImage::Format_Indexed8 or QImage::Format_ARGB32 depending on the color map.
See also
QwtRasterData::intensity(), QwtColorMap::rgb(), QwtColorMap::colorIndex()

◆ renderTile()

void QwtPolarSpectrogram::renderTile ( const QwtScaleMap azimuthMap,
const QwtScaleMap radialMap,
const QPointF &  pole,
const QPoint &  imagePos,
const QRect &  tile,
QImage *  image 
) const
protectedvirtual

Render a sub-rectangle of an image.

renderTile() is called by renderImage() to render different parts of the image by concurrent threads.

Parameters
azimuthMapMaps azimuth values to values related to 0.0, M_2PI
radialMapMaps radius values into painter coordinates.
polePosition of the pole in painter coordinates
imagePosTop/left position of the image in painter coordinates
tileSub-rectangle of the tile in painter coordinates
imageImage to be rendered
See also
setRenderThreadCount()
Note
renderTile needs to be reentrant

◆ rtti()

int QwtPolarSpectrogram::rtti ( ) const
virtual

◆ setColorMap()

void QwtPolarSpectrogram::setColorMap ( QwtColorMap colorMap)

Change the color map.

Often it is useful to display the mapping between intensities and colors as an additional plot axis, showing a color bar.

Parameters
colorMapColor Map
See also
colorMap(), QwtScaleWidget::setColorBarEnabled(), QwtScaleWidget::setColorMap()

◆ setData()

void QwtPolarSpectrogram::setData ( QwtRasterData data)

Set the data to be displayed.

Parameters
dataSpectrogram Data
See also
data()
Warning
QwtRasterData::initRaster() is called each time before the image is rendered, but without any useful parameters. Also QwtRasterData::rasterHint() is not used.

◆ setPaintAttribute()

void QwtPolarSpectrogram::setPaintAttribute ( PaintAttribute  attribute,
bool  on = true 
)

Specify an attribute how to draw the curve.

Parameters
attributePaint attribute
onOn/Off
See also
testPaintAttribute()

◆ testPaintAttribute()

bool QwtPolarSpectrogram::testPaintAttribute ( PaintAttribute  attribute) const
Parameters
attributePaint attribute
Returns
True, when attribute has been set
See also
setPaintAttribute()

The documentation for this class was generated from the following files: