QwtLog10ScaleEngine Class Reference

A scale engine for logarithmic (base 10) scales. More...

#include <qwt_scale_engine.h>

Inheritance diagram for QwtLog10ScaleEngine:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual void autoScale (int maxSteps, double &x1, double &x2, double &stepSize) const
virtual QwtScaleDiv divideScale (double x1, double x2, int numMajorSteps, int numMinorSteps, double stepSize=0.0) const
virtual QwtScaleTransformationtransformation () const

Protected Member Functions

QwtInterval log10 (const QwtInterval &) const
QwtInterval pow10 (const QwtInterval &) const
QwtInterval align (const QwtInterval &, double stepSize) const
void buildTicks (const QwtInterval &, double stepSize, int maxMinSteps, QList< double > ticks[QwtScaleDiv::NTickTypes]) const
QList< double > buildMajorTicks (const QwtInterval &interval, double stepSize) const
QList< double > buildMinorTicks (const QList< double > &majorTicks, int maxMinMark, double step) const

Detailed Description

A scale engine for logarithmic (base 10) scales.

The step size is measured in *decades* and the major step size will be adjusted to fit the pattern $\left\{ 1,2,3,5\right\} \cdot 10^{n}$, where n is a natural number including zero.

Warning:
the step size as well as the margins are measured in *decades*.

Member Function Documentation

QwtInterval QwtLog10ScaleEngine::align ( const QwtInterval interval,
double  stepSize 
) const [protected]

Align an interval to a step size.

The limits of an interval are aligned that both are integer multiples of the step size.

Parameters:
interval Interval
stepSize Step size
Returns:
Aligned interval
void QwtLog10ScaleEngine::autoScale ( int  maxNumSteps,
double &  x1,
double &  x2,
double &  stepSize 
) const [virtual]

Align and divide an interval

Parameters:
maxNumSteps Max. number of steps
x1 First limit of the interval (In/Out)
x2 Second limit of the interval (In/Out)
stepSize Step size (Out)
See also:
QwtScaleEngine::setAttribute()

Implements QwtScaleEngine.

QList< double > QwtLog10ScaleEngine::buildMajorTicks ( const QwtInterval interval,
double  stepSize 
) const [protected]

Calculate major ticks for an interval.

Parameters:
interval Interval
stepSize Step size
Returns:
Calculated ticks
QList< double > QwtLog10ScaleEngine::buildMinorTicks ( const QList< double > &  majorTicks,
int  maxMinSteps,
double  stepSize 
) const [protected]

Calculate minor/medium ticks for major ticks.

Parameters:
majorTicks Major ticks
maxMinSteps Maximum number of minor steps
stepSize Step size
void QwtLog10ScaleEngine::buildTicks ( const QwtInterval interval,
double  stepSize,
int  maxMinSteps,
QList< double >  ticks[QwtScaleDiv::NTickTypes] 
) const [protected]

Calculate ticks for an interval.

Parameters:
interval Interval
maxMinSteps Maximum number of minor steps
stepSize Step size
ticks Arrays to be filled with the calculated ticks
See also:
buildMajorTicks(), buildMinorTicks
QwtScaleDiv QwtLog10ScaleEngine::divideScale ( double  x1,
double  x2,
int  maxMajSteps,
int  maxMinSteps,
double  stepSize = 0.0 
) const [virtual]

Calculate a scale division.

Parameters:
x1 First interval limit
x2 Second interval limit
maxMajSteps Maximum for the number of major steps
maxMinSteps Maximum number of minor steps
stepSize Step size. If stepSize == 0, the scaleEngine calculates one.
See also:
QwtScaleEngine::stepSize(), QwtLog10ScaleEngine::subDivide()

Implements QwtScaleEngine.

QwtInterval QwtLog10ScaleEngine::log10 ( const QwtInterval interval  )  const [protected]

Return the interval [log10(interval.minValue(), log10(interval.maxValue]

QwtInterval QwtLog10ScaleEngine::pow10 ( const QwtInterval interval  )  const [protected]

Return the interval [pow10(interval.minValue(), pow10(interval.maxValue]

QwtScaleTransformation * QwtLog10ScaleEngine::transformation (  )  const [virtual]

Return a transformation, for logarithmic (base 10) scales

Implements QwtScaleEngine.

Generated on Sun Nov 21 12:01:37 2010 for Qwt User's Guide by  doxygen 1.6.3