Qwt Polar User's Guide  1.1.1
 All Classes Functions Typedefs Enumerations Enumerator Pages
Public Types | Public Member Functions | Protected Member Functions | List of all members
QwtPolarCurve Class Reference

An item, that represents a series of points. More...

#include <qwt_polar_curve.h>

Inheritance diagram for QwtPolarCurve:
Inheritance graph
[legend]

Public Types

enum  CurveStyle { NoCurve, Lines, UserCurve = 100 }
 
enum  LegendAttribute { LegendShowLine = 0x01, LegendShowSymbol = 0x02 }
 Attributes how to represent the curve on the legend. More...
 
typedef QFlags< LegendAttributeLegendAttributes
 Legend attributes.
 
- 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...
 
typedef QFlags< ItemAttributeItemAttributes
 Item attributes.
 
typedef QFlags< RenderHintRenderHints
 Item attributes.
 

Public Member Functions

 QwtPolarCurve ()
 Constructor.
 
 QwtPolarCurve (const QwtText &title)
 
 QwtPolarCurve (const QString &title)
 
virtual ~QwtPolarCurve ()
 Destructor.
 
virtual int rtti () const
 
void setLegendAttribute (LegendAttribute, bool on=true)
 
bool testLegendAttribute (LegendAttribute) const
 Test if a lefend attribute is enables. More...
 
void setData (QwtSeriesData< QwtPointPolar > *data)
 
const QwtSeriesData
< QwtPointPolar > * 
data () const
 
size_t dataSize () const
 
QwtPointPolar sample (int i) const
 
void setPen (const QPen &)
 Assign a pen. More...
 
const QPen & pen () const
 
void setStyle (CurveStyle style)
 
CurveStyle style () const
 
void setSymbol (QwtSymbol *)
 Assign a symbol. More...
 
const QwtSymbol * symbol () const
 
void setCurveFitter (QwtCurveFitter *)
 Insert a curve fitter. More...
 
QwtCurveFitter * curveFitter () const
 
virtual void draw (QPainter *p, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QPointF &pole, double radius, const QRectF &canvasRect) const
 
virtual void draw (QPainter *p, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QPointF &pole, int from, int to) const
 Draw an interval of the curve. More...
 
virtual QwtInterval boundingInterval (int scaleId) const
 
virtual QwtGraphic legendIcon (int index, const QSizeF &) const
 
- Public Member Functions inherited from QwtPolarItem
 QwtPolarItem (const QwtText &title=QwtText())
 
virtual ~QwtPolarItem ()
 Destroy the QwtPolarItem.
 
void attach (QwtPolarPlot *plot)
 Attach the item to a plot. More...
 
void detach ()
 This method detaches a QwtPolarItem from the QwtPolarPlot it has been associated with. More...
 
QwtPolarPlotplot () const
 
void setTitle (const QString &title)
 
void setTitle (const QwtText &title)
 
const QwtText & title () const
 
void setItemAttribute (ItemAttribute, bool on=true)
 
bool testItemAttribute (ItemAttribute) const
 
void setRenderHint (RenderHint, bool on=true)
 
bool testRenderHint (RenderHint) const
 
void setRenderThreadCount (uint numThreads)
 
uint renderThreadCount () const
 
double z () const
 
void setZ (double z)
 Set the z value. More...
 
void show ()
 Show the item.
 
void hide ()
 Hide the item.
 
virtual void setVisible (bool)
 
bool isVisible () const
 
virtual void itemChanged ()
 
virtual void legendChanged ()
 
virtual void updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &, const QwtInterval &)
 Update the item to changes of the axes scale division. More...
 
virtual int marginHint () const
 
void setLegendIconSize (const QSize &)
 
QSize legendIconSize () const
 
virtual QList< QwtLegendData > legendData () const
 Return all information, that is needed to represent the item on the legend. More...
 

Protected Member Functions

void init ()
 Initialize data members.
 
virtual void drawCurve (QPainter *, int style, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QPointF &pole, int from, int to) const
 
virtual void drawSymbols (QPainter *, const QwtSymbol &, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QPointF &pole, int from, int to) const
 
void drawLines (QPainter *, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QPointF &pole, int from, int to) const
 

Detailed Description

An item, that represents a series of points.

A curve is the representation of a series of points in polar coordinates. The points are connected to the curve using the abstract QwtData interface.

See Also
QwtPolarPlot, QwtSymbol, QwtScaleMap

Member Enumeration Documentation

Curve styles.

See Also
setStyle(), style()
Enumerator
NoCurve 

Don't draw a curve. Note: This doesn't affect the symbols.

Lines 

Connect the points with straight lines. The lines might be interpolated depending on the 'Fitted' attribute. Curve fitting can be configured using setCurveFitter().

UserCurve 

Values > 100 are reserved for user specific curve styles.

Attributes how to represent the curve on the legend.

If none of the flags is activated QwtPlotCurve tries to find a color representing the curve and paints a rectangle with it. In the default setting all attributes are off.

See Also
setLegendAttribute(), testLegendAttribute()
Enumerator
LegendShowLine 

If the curveStyle() is not NoCurve a line is painted with the curvePen().

LegendShowSymbol 

If the curve has a valid symbol it is painted.

Constructor & Destructor Documentation

QwtPolarCurve::QwtPolarCurve ( const QwtText &  title)
explicit

Constructor

Parameters
titletitle of the curve
QwtPolarCurve::QwtPolarCurve ( const QString &  title)
explicit

Constructor

Parameters
titletitle of the curve

Member Function Documentation

QwtInterval QwtPolarCurve::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
See Also
QwtData::boundingRect()

Reimplemented from QwtPolarItem.

QwtCurveFitter * QwtPolarCurve::curveFitter ( ) const
Returns
The curve fitter
See Also
setCurveFitter()
const QwtSeriesData< QwtPointPolar > * QwtPolarCurve::data ( ) const
inline
Returns
the the curve data
size_t QwtPolarCurve::dataSize ( ) const
Returns
Number of points
See Also
setData()
void QwtPolarCurve::draw ( QPainter *  painter,
const QwtScaleMap &  azimuthMap,
const QwtScaleMap &  radialMap,
const QPointF &  pole,
double  radius,
const QRectF &  canvasRect 
) const
virtual

Draw the curve

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.

void QwtPolarCurve::draw ( QPainter *  painter,
const QwtScaleMap &  azimuthMap,
const QwtScaleMap &  radialMap,
const QPointF &  pole,
int  from,
int  to 
) const
virtual

Draw an interval of the curve.

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
fromindex of the first point to be painted
toindex of the last point to be painted. If to < 0 the curve will be painted to its last point.
See Also
drawCurve(), drawSymbols(),
void QwtPolarCurve::drawCurve ( QPainter *  painter,
int  style,
const QwtScaleMap &  azimuthMap,
const QwtScaleMap &  radialMap,
const QPointF &  pole,
int  from,
int  to 
) const
protectedvirtual

Draw the line part (without symbols) of a curve interval.

Parameters
painterPainter
styleCurve style, see QwtPolarCurve::CurveStyle
azimuthMapMaps azimuth values to values related to 0.0, M_2PI
radialMapMaps radius values into painter coordinates.
polePosition of the pole in painter coordinates
fromindex of the first point to be painted
toindex of the last point to be painted.
See Also
draw(), drawLines()
void QwtPolarCurve::drawLines ( QPainter *  painter,
const QwtScaleMap &  azimuthMap,
const QwtScaleMap &  radialMap,
const QPointF &  pole,
int  from,
int  to 
) const
protected

Draw lines

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
fromindex of the first point to be painted
toindex of the last point to be painted.
See Also
draw(), drawLines(), setCurveFitter()
void QwtPolarCurve::drawSymbols ( QPainter *  painter,
const QwtSymbol &  symbol,
const QwtScaleMap &  azimuthMap,
const QwtScaleMap &  radialMap,
const QPointF &  pole,
int  from,
int  to 
) const
protectedvirtual

Draw symbols

Parameters
painterPainter
symbolCurve symbol
azimuthMapMaps azimuth values to values related to 0.0, M_2PI
radialMapMaps radius values into painter coordinates.
polePosition of the pole in painter coordinates
fromindex of the first point to be painted
toindex of the last point to be painted.
See Also
setSymbol(), draw(), drawCurve()
QwtGraphic QwtPolarCurve::legendIcon ( int  index,
const QSizeF &  size 
) const
virtual
Returns
Icon representing the curve on the legend
Parameters
indexIndex of the legend entry ( ignored as there is only one )
sizeIcon size
See Also
QwtPolarItem::setLegendIconSize(), QwtPolarItem::legendData()

Reimplemented from QwtPolarItem.

const QPen & QwtPolarCurve::pen ( ) const
Returns
Pen used to draw the lines
See Also
setPen()
int QwtPolarCurve::rtti ( ) const
virtual
Returns
QwtPolarCurve::Rtti_PolarCurve

Reimplemented from QwtPolarItem.

QwtPointPolar QwtPolarCurve::sample ( int  i) const
inline
Parameters
iindex
Returns
point at position i
void QwtPolarCurve::setCurveFitter ( QwtCurveFitter *  curveFitter)

Insert a curve fitter.

Parameters
curveFitterCurve fitter

A curve fitter interpolates the curve points. F.e QwtPolarFitter adds equidistant points so that the connection gets rounded instead of having straight lines. If curveFitter is NULL fitting is disabled.

See Also
curveFitter()
void QwtPolarCurve::setData ( QwtSeriesData< QwtPointPolar > *  data)

Initialize data with a pointer to QwtSeriesData<QwtPointPolar>.

The x-values of the data object represent the azimuth, the y-value respresent the radius.

Parameters
dataData
void QwtPolarCurve::setLegendAttribute ( LegendAttribute  attribute,
bool  on = true 
)

Specify an attribute how to draw the legend identifier

Parameters
attributeAttribute
onOn/Off /sa LegendAttribute, testLegendAttribute()
void QwtPolarCurve::setPen ( const QPen &  pen)

Assign a pen.

Parameters
penNew pen
See Also
pen()
void QwtPolarCurve::setStyle ( CurveStyle  style)

Set the curve's drawing style

Parameters
styleCurve style
See Also
CurveStyle, style()
void QwtPolarCurve::setSymbol ( QwtSymbol *  symbol)

Assign a symbol.

Parameters
symbolSymbol
See Also
symbol()
QwtPolarCurve::CurveStyle QwtPolarCurve::style ( ) const
Returns
Current style
See Also
CurveStyle, setStyle()
const QwtSymbol * QwtPolarCurve::symbol ( ) const
Returns
The current symbol
See Also
setSymbol()
bool QwtPolarCurve::testLegendAttribute ( LegendAttribute  attribute) const

Test if a lefend attribute is enables.

Parameters
attributeLegend attribute
Returns
True if attribute is enabled
See Also
LegendAttribute, setLegendAttribute()