QwtPointMapper(3)

NAME
QwtPointMapper - A helper class for translating a series of points.

SYNOPSIS

#include <qwt_point_mapper.h>

  Public Types
enum TransformationFlag { RoundPoints = 0x01, WeedOutPoints = 0x02, WeedOutIntermediatePoints = 0x04 }
Flags affecting the transformation process.
typedef QFlags< TransformationFlag > TransformationFlags

  Public Member Functions
QwtPointMapper ()
Constructor.
~QwtPointMapper ()
Destructor.
void setFlags (TransformationFlags)
TransformationFlags flags () const
void setFlag (TransformationFlag, bool on=true)
bool testFlag (TransformationFlag) const
void setBoundingRect (const QRectF &)
QRectF boundingRect () const
QPolygonF toPolygonF (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtSeriesData< QPointF > *series, int from, int to) const
Translate a series of points into a QPolygonF.
QPolygon toPolygon (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtSeriesData< QPointF > *series, int from, int to) const
Translate a series of points into a QPolygon.
QPolygon toPoints (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtSeriesData< QPointF > *series, int from, int to) const
Translate a series of points into a QPolygon.
QPolygonF toPointsF (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtSeriesData< QPointF > *series, int from, int to) const
Translate a series into a QPolygonF.
QImage toImage (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QwtSeriesData< QPointF > *series, int from, int to, const QPen &, bool antialiased, uint numThreads) const
Translate a series into a QImage.

Detailed Description

A helper class for translating a series of points. QwtPointMapper is a collection of methods and optimizations for translating a series of points into paint device coordinates. It is used by QwtPlotCurve but might also be useful for similar plot items displaying a QwtSeriesData<QPointF>.

Definition at line 32 of file qwt_point_mapper.h.

Member Typedef Documentation

  typedef QFlags<TransformationFlag > QwtPointMapper::TransformationFlags
An ORed combination of TransformationFlag values.

Definition at line 71 of file qwt_point_mapper.h.

Member Enumeration Documentation

  enum QwtPointMapper::TransformationFlag

Flags affecting the transformation process.

See also
    setFlag(), setFlags()

Enumerator

RoundPoints
    Round points to integer values.

WeedOutPoints
    Try to remove points, that are translated to the same position.

WeedOutIntermediatePoints
    An even more aggressive weeding algorithm, that can be used in toPolygon().

A consecutive chunk of points being mapped to the same x coordinate is reduced to 4 points:

•   first point

•   point with the minimum y coordinate

•   point with the maximum y coordinate

•   last point

In the worst case ( first and last points are never one of the extremes ) the number of points will be 4 times the width.

As the algorithm is fast it can be used inside of a polyline render cycle.

Definition at line 39 of file qwt_point_mapper.h.

Member Function Documentation

  QRectF QwtPointMapper::boundingRect () const

Returns
    Bounding rectangle

See also
    setBoundingRect()

Definition at line 621 of file qwt_point_mapper.cpp.

  QwtPointMapper::TransformationFlags QwtPointMapper::flags () const

Returns
    Flags affecting the transformation process

See also
    setFlags(), setFlag()

Definition at line 573 of file qwt_point_mapper.cpp.

  void QwtPointMapper::setBoundingRect (const QRectF & rect)
Set a bounding rectangle for the point mapping algorithm

A valid bounding rectangle can be used for optimizations

Parameters
    rect Bounding rectangle

See also
    boundingRect()

Definition at line 612 of file qwt_point_mapper.cpp.

  void QwtPointMapper::setFlag (TransformationFlag flag, bool on = true)
Modify a flag affecting the transformation process

Parameters
    flag Flag type
    on Value

See also
    flag(), setFlags()

Definition at line 586 of file qwt_point_mapper.cpp.

  void QwtPointMapper::setFlags (TransformationFlags flags)
Set the flags affecting the transformation process

Parameters
    flags Flags

See also
    flags(), setFlag()

Definition at line 564 of file qwt_point_mapper.cpp.

  bool QwtPointMapper::testFlag (TransformationFlag flag) const

Returns
    True, when the flag is set

Parameters
    flag Flag type

See also
    setFlag(), setFlags()

Definition at line 599 of file qwt_point_mapper.cpp.

  QImage QwtPointMapper::toImage (const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QwtSeriesData< QPointF > * series, int from, int to, const QPen & pen, bool antialiased, uint numThreads) const

Translate a series into a QImage.

Parameters
    xMap x map
    yMap y map
    series Series of points to be mapped
    from Index of the first point to be painted
    to Index of the last point to be painted
    pen Pen used for drawing a point of the image, where a point is mapped to
    antialiased True, when the dots should be displayed antialiased
    numThreads Number of threads to be used for rendering. If numThreads is set to 0, the system specific ideal thread count is used.

Returns
    Image displaying the series

Definition at line 883 of file qwt_point_mapper.cpp.

  QPolygon QwtPointMapper::toPoints (const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QwtSeriesData< QPointF > * series, int from, int to) const

Translate a series of points into a QPolygon.

•   WeedOutPoints & boundingRect().isValid() All points that are mapped to the same position will be one point. Points outside of the bounding rectangle are ignored.

•   WeedOutPoints & !boundingRect().isValid() All consecutive points that are mapped to the same position will one point

•   !WeedOutPoints & boundingRect().isValid() Points outside of the bounding rectangle are ignored.

Parameters
    xMap x map
    yMap y map
    series Series of points to be mapped
    from Index of the first point to be painted
    to Index of the last point to be painted

Returns
    Translated polygon

Definition at line 833 of file qwt_point_mapper.cpp.

  QPolygonF QwtPointMapper::toPointsF (const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QwtSeriesData< QPointF > * series, int from, int to) const

Translate a series into a QPolygonF.

•   WeedOutPoints & RoundPoints & boundingRect().isValid() All points that are mapped to the same position will be one point. Points outside of the bounding rectangle are ignored.

•   WeedOutPoints & RoundPoints & !boundingRect().isValid() All consecutive points that are mapped to the same position will one point

•   WeedOutPoints & !RoundPoints All consecutive points that are mapped to the same position will one point

•   !WeedOutPoints & boundingRect().isValid() Points outside of the bounding rectangle are ignored.

When RoundPoints is set all points are rounded to integers but returned as PolygonF - what only makes sense when the further processing of the values need a QPolygonF.

Parameters
    xMap x map
    yMap y map
    series Series of points to be mapped
    from Index of the first point to be painted
    to Index of the last point to be painted

Returns
    Translated polygon

Definition at line 759 of file qwt_point_mapper.cpp.

  QPolygon QwtPointMapper::toPolygon (const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QwtSeriesData< QPointF > * series, int from, int to) const

Translate a series of points into a QPolygon. When the WeedOutPoints flag is enabled consecutive points, that are mapped to the same position will be one point.

Parameters
    xMap x map
    yMap y map
    series Series of points to be mapped
    from Index of the first point to be painted
    to Index of the last point to be painted

Returns
    Translated polygon

Definition at line 702 of file qwt_point_mapper.cpp.

  QPolygonF QwtPointMapper::toPolygonF (const QwtScaleMap & xMap, const QwtScaleMap & yMap, const QwtSeriesData< QPointF > * series, int from, int to) const

Translate a series of points into a QPolygonF. When the WeedOutPoints flag is enabled consecutive points, that are mapped to the same position will be one point.

When RoundPoints is set all points are rounded to integers but returned as PolygonF - what only makes sense when the further processing of the values need a QPolygonF.

When RoundPoints & WeedOutIntermediatePoints is enabled an even more aggressive weeding algorithm is enabled.

Parameters
    xMap x map
    yMap y map
    series Series of points to be mapped
    from Index of the first point to be painted
    to Index of the last point to be painted

Returns
    Translated polygon

Definition at line 647 of file qwt_point_mapper.cpp.

Author

Generated automatically by Doxygen for Qwt User's Guide from the source code.