Scroll to navigation

QwtPlotRescaler(3) Qwt User's Guide QwtPlotRescaler(3)

NAME

QwtPlotRescaler -
QwtPlotRescaler takes care of fixed aspect ratios for plot scales.
 

SYNOPSIS

#include <qwt_plot_rescaler.h>

Public Types


enum RescalePolicy { Fixed, Expanding, Fitting }
 
enum ExpandingDirection { ExpandUp, ExpandDown, ExpandBoth }
 

Public Member Functions


QwtPlotRescaler (QwtPlotCanvas *, int referenceAxis=QwtPlot::xBottom, RescalePolicy=Expanding)
 
virtual ~QwtPlotRescaler ()
 
void setEnabled (bool)
 
bool isEnabled () const
 
void setRescalePolicy (RescalePolicy)
 
RescalePolicy rescalePolicy () const
 
void setExpandingDirection (ExpandingDirection)
 
void setExpandingDirection (int axis, ExpandingDirection)
 
ExpandingDirection expandingDirection (int axis) const
 
void setReferenceAxis (int axis)
 
int referenceAxis () const
 
void setAspectRatio (double ratio)
 
void setAspectRatio (int axis, double ratio)
 
double aspectRatio (int axis) const
 
void setIntervalHint (int axis, const QwtInterval &)
 
QwtInterval intervalHint (int axis) const
 
QwtPlotCanvas * canvas ()
 
const QwtPlotCanvas * canvas () const
 
QwtPlot * plot ()
 
const QwtPlot * plot () const
 
virtual bool eventFilter (QObject *, QEvent *)
 
void rescale () const
 

Protected Member Functions


virtual void canvasResizeEvent (QResizeEvent *)
 
virtual void rescale (const QSize &oldSize, const QSize &newSize) const
 
virtual QwtInterval expandScale (int axis, const QSize &oldSize, const QSize &newSize) const
 
virtual QwtInterval syncScale (int axis, const QwtInterval &reference, const QSize &size) const
 
virtual void updateScales (QwtInterval intervals[QwtPlot::axisCnt]) const
 
Qt::Orientation orientation (int axis) const
 
QwtInterval interval (int axis) const
 
QwtInterval expandInterval (const QwtInterval &, double width, ExpandingDirection) const
 

Detailed Description

QwtPlotRescaler takes care of fixed aspect ratios for plot scales.
 
QwtPlotRescaler autoadjusts the axes of a QwtPlot according to fixed aspect ratios.

Member Enumeration Documentation

enum QwtPlotRescaler::ExpandingDirection When rescalePolicy() is set to Expanding its direction depends on ExpandingDirection

Enumerator:
ExpandUp
The upper limit of the scale is adjusted.
ExpandDown
The lower limit of the scale is adjusted.
ExpandBoth
Both limits of the scale are adjusted.

enum QwtPlotRescaler::RescalePolicy The rescale policy defines how to rescale the reference axis and their depending axes.

See also:
ExpandingDirection, setIntervalHint()
 
Enumerator:
Fixed
The interval of the reference axis remains unchanged, when the geometry of the canvas changes. All other axes will be adjusted according to their aspect ratio.
Expanding
The interval of the reference axis will be shrinked/expanded, when the geometry of the canvas changes. All other axes will be adjusted according to their aspect ratio.
The interval, that is represented by one pixel is fixed.
Fitting
The intervals of the axes are calculated, so that all axes include their interval hint.

Constructor & Destructor Documentation

QwtPlotRescaler::QwtPlotRescaler (QwtPlotCanvas *canvas, intreferenceAxis = QwtPlot::xBottom, RescalePolicypolicy = Expanding) [explicit] Constructor

Parameters:
canvas Canvas
 
referenceAxis Reference axis, see RescalePolicy
 
policy Rescale policy
See also:
setRescalePolicy(), setReferenceAxis()
 

QwtPlotRescaler::~QwtPlotRescaler () [virtual]

Destructor.

Member Function Documentation

double QwtPlotRescaler::aspectRatio (intaxis) const Return aspect ratio between an axis and the reference axis.

Parameters:
axis Axis index ( see QwtPlot::AxisId )
See also:
setAspectRatio()
 

const QwtPlotCanvas * QwtPlotRescaler::canvas () const Returns:

plot canvas
 

QwtPlotCanvas * QwtPlotRescaler::canvas () Returns:

plot canvas
 

void QwtPlotRescaler::canvasResizeEvent (QResizeEvent *event) [protected, virtual] Event handler for resize events of the plot canvas

Parameters:
event Resize event
See also:
rescale()
 

bool QwtPlotRescaler::eventFilter (QObject *o, QEvent *e) [virtual]

Event filter for the plot canvas.

QwtPlotRescaler::ExpandingDirection QwtPlotRescaler::expandingDirection (intaxis) const Return direction in which an axis should be expanded

Parameters:
axis Axis index ( see QwtPlot::AxisId )
See also:
setExpandingDirection()
 

QwtInterval QwtPlotRescaler::expandInterval (const QwtInterval &interval, doublewidth, ExpandingDirectiondirection) const [protected] Expand the interval

Parameters:
interval Interval to be expanded
 
width Distance to be added to the interval
 
direction Direction of the expand operation
Returns:
Expanded interval
 

QwtInterval QwtPlotRescaler::expandScale (intaxis, const QSize &oldSize, const QSize &newSize) const [protected, virtual] Calculate the new scale interval of a plot axis

Parameters:
axis Axis index ( see QwtPlot::AxisId )
 
oldSize Previous size of the canvas
 
newSize New size of the canvas
Returns:
Calculated new interval for the axis
 

QwtInterval QwtPlotRescaler::interval (intaxis) const [protected] Return interval of an axis

Parameters:
axis Axis index ( see QwtPlot::AxisId )
 

QwtInterval QwtPlotRescaler::intervalHint (intaxis) const Parameters:

axis Axis, see QwtPlot::Axis
Returns:
Interval hint
See also:
setIntervalHint(), RescalePolicy
 

bool QwtPlotRescaler::isEnabled () const Returns:

true when enabled, false otherwise
See also:
setEnabled, eventFilter()
 

Qt::Orientation QwtPlotRescaler::orientation (intaxis) const [protected] Return orientation of an axis

Parameters:
axis Axis index ( see QwtPlot::AxisId )
 

QwtPlot * QwtPlotRescaler::plot () Returns:

plot widget
 

const QwtPlot * QwtPlotRescaler::plot () const Returns:

plot widget
 

int QwtPlotRescaler::referenceAxis () const Returns:

Reference axis ( see RescalePolicy )
See also:
setReferenceAxis()
 

void QwtPlotRescaler::rescale () const

Adjust the plot axes scales.

void QwtPlotRescaler::rescale (const QSize &oldSize, const QSize &newSize) const [protected, virtual] Adjust the plot axes scales

Parameters:
oldSize Previous size of the canvas
 
newSize New size of the canvas
 

QwtPlotRescaler::RescalePolicy QwtPlotRescaler::rescalePolicy () const Returns:

Rescale policy
See also:
setRescalePolicy()
 

void QwtPlotRescaler::setAspectRatio (intaxis, doubleratio) Set the aspect ratio between the scale of the reference axis and another scale. The default ratio is 1.0

Parameters:
axis Axis index ( see QwtPlot::AxisId )
 
ratio Aspect ratio
See also:
aspectRatio()
 

void QwtPlotRescaler::setAspectRatio (doubleratio) Set the aspect ratio between the scale of the reference axis and the other scales. The default ratio is 1.0

Parameters:
ratio Aspect ratio
See also:
aspectRatio()
 

void QwtPlotRescaler::setEnabled (boolon)

En/disable the rescaler. When enabled is true an event filter is installed for the canvas, otherwise the event filter is removed.
Parameters:
on true or false
See also:
isEnabled(), eventFilter()
 

void QwtPlotRescaler::setExpandingDirection (intaxis, ExpandingDirectiondirection) Set the direction in which an axis should be expanded

Parameters:
axis Axis index ( see QwtPlot::AxisId )
 
direction Direction
See also:
expandingDirection()
 

void QwtPlotRescaler::setExpandingDirection (ExpandingDirectiondirection) Set the direction in which all axis should be expanded

Parameters:
direction Direction
See also:
expandingDirection()
 

void QwtPlotRescaler::setIntervalHint (intaxis, const QwtInterval &interval) Set an interval hint for an axis

In Fitting mode, the hint is used as minimal interval taht always needs to be displayed.
Parameters:
axis Axis, see QwtPlot::Axis
 
interval Axis
See also:
intervalHint(), RescalePolicy
 

void QwtPlotRescaler::setReferenceAxis (intaxis) Set the reference axis ( see RescalePolicy )

Parameters:
axis Axis index ( QwtPlot::Axis )
See also:
referenceAxis()
 

void QwtPlotRescaler::setRescalePolicy (RescalePolicypolicy) Change the rescale policy

Parameters:
policy Rescale policy
See also:
rescalePolicy()
 

QwtInterval QwtPlotRescaler::syncScale (intaxis, const QwtInterval &reference, const QSize &size) const [protected, virtual] Synchronize an axis scale according to the scale of the reference axis

Parameters:
axis Axis index ( see QwtPlot::AxisId )
 
reference Interval of the reference axis
 
size Size of the canvas
 

void QwtPlotRescaler::updateScales (QwtIntervalintervals[QwtPlot::axisCnt]) const [protected, virtual] Update the axes scales

Parameters:
intervals Scale intervals
 
 

Author

Generated automatically by Doxygen for Qwt User's Guide from the source code.
Fri Apr 15 2011 Version 6.0.0