Qwt Polar User's Guide  0.1.0
Public Types | Public Member Functions | Protected Member Functions | List of all members
QwtPolarCurve Class Reference

#include <qwt_polar_curve.h>

Inheritance diagram for QwtPolarCurve:
Inheritance graph
[legend]

Public Types

enum  CurveStyle {
  NoCurve,
  Lines,
  UserCurve = 100
}
- Public Types inherited from QwtPolarItem
enum  RttiValues {
  Rtti_PolarItem = 0,
  Rtti_PolarGrid,
  Rtti_PolarScale,
  Rtti_PolarMarker,
  Rtti_PolarCurve,
  Rtti_PolarSpectrogram,
  Rtti_PolarUserItem = 1000
}
enum  ItemAttribute {
  Legend = 1,
  AutoScale = 2
}
enum  RenderHint { RenderAntialiased = 1 }

Public Member Functions

 QwtPolarCurve ()
 QwtPolarCurve (const QwtText &title)
 QwtPolarCurve (const QString &title)
virtual ~QwtPolarCurve ()
virtual int rtti () const
void setData (const QwtData &data)
QwtData & data ()
const QwtData & data () const
int dataSize () const
double radius (int i) const
double azimuth (int i) const
QwtPolarPoint sample (int i) const
void setPen (const QPen &)
const QPen & pen () const
void setStyle (CurveStyle style)
CurveStyle style () const
void setSymbol (const QwtSymbol &s)
const QwtSymbol & symbol () const
void setCurveFitter (QwtCurveFitter *)
QwtCurveFitter * curveFitter () const
virtual void draw (QPainter *p, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QwtDoublePoint &pole, double radius, const QwtDoubleRect &canvasRect) const
virtual void draw (QPainter *p, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QwtDoublePoint &pole, int from, int to) const
virtual void updateLegend (QwtLegend *) const
virtual QwtDoubleInterval boundingInterval (int scaleId) const
- Public Member Functions inherited from QwtPolarItem
 QwtPolarItem (const QwtText &title=QwtText())
virtual ~QwtPolarItem ()
void attach (QwtPolarPlot *plot)
void detach ()
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
double z () const
void setZ (double z)
void show ()
void hide ()
virtual void setVisible (bool)
bool isVisible () const
virtual void itemChanged ()
virtual QWidget * legendItem () const
virtual void updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &, const QwtDoubleInterval &)
virtual int marginHint () const

Protected Member Functions

void init ()
virtual void drawCurve (QPainter *, int style, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QwtDoublePoint &pole, int from, int to) const
virtual void drawSymbols (QPainter *, const QwtSymbol &, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QwtDoublePoint &pole, int from, int to) const
void drawLines (QPainter *, const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap, const QwtDoublePoint &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.

  • 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().
See Also
setStyle()

Constructor & Destructor Documentation

QwtPolarCurve::QwtPolarCurve ( )
explicit

Constructor.

QwtPolarCurve::QwtPolarCurve ( const QwtText &  title)
explicit

Constructor

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

Constructor

Parameters
titletitle of the curve
QwtPolarCurve::~QwtPolarCurve ( )
virtual

Destructor.

Member Function Documentation

double QwtPolarCurve::azimuth ( int  i) const
inline
Parameters
iindex
Returns
azimuth at position i
QwtDoubleInterval 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

Return the curve fitter.

See Also
setCurveFitter()
QwtData & QwtPolarCurve::data ( )
inline
Returns
the the curve data
const QwtData & QwtPolarCurve::data ( ) const
inline
Returns
the the curve data
int QwtPolarCurve::dataSize ( ) const

Return the size of the data arrays

See Also
setData()
void QwtPolarCurve::draw ( QPainter *  painter,
const QwtScaleMap &  azimuthMap,
const QwtScaleMap &  radialMap,
const QwtDoublePoint &  pole,
double  radius,
const QwtDoubleRect &  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 QwtDoublePoint &  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 QwtDoublePoint &  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 QwtDoublePoint &  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 QwtDoublePoint &  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()
void QwtPolarCurve::init ( )
protected

Initialize data members.

const QPen & QwtPolarCurve::pen ( ) const

Return the pen used to draw the lines.

See Also
setPen()
double QwtPolarCurve::radius ( int  i) const
inline
Parameters
iindex
Returns
radius at position i
int QwtPolarCurve::rtti ( ) const
virtual
Returns
QwtPolarCurve::Rtti_PolarCurve

Reimplemented from QwtPolarItem.

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

Insert a curve 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 ( const QwtData &  data)

Initialize data with a pointer to QwtData.

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

Parameters
dataData
See Also
QwtData::copy()
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 ( const QwtSymbol &  s)

Assign a symbol.

Parameters
ssymbol
See Also
symbol()
QwtPolarCurve::CurveStyle QwtPolarCurve::style ( ) const

Return the current style.

See Also
CurveStyle, setStyle()
const QwtSymbol & QwtPolarCurve::symbol ( ) const

Return the current symbol.

See Also
setSymbol()
void QwtPolarCurve::updateLegend ( QwtLegend *  legend) const
virtual

Update the widget that represents the curve on the legend.

Reimplemented from QwtPolarItem.