Qwt User's Guide
QwtLinearScaleEngine Class Reference

A scale engine for linear scales. More...

#include <qwt_scale_engine.h>

Inheritance diagram for QwtLinearScaleEngine:

Public Member Functions

 QwtLinearScaleEngine (uint base=10)
virtual ~QwtLinearScaleEngine ()
 Destructor.
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
 Calculate a scale division for an interval.

Protected Member Functions

QwtInterval align (const QwtInterval &, double stepSize) const
 Align an interval to a step size.
void buildTicks (const QwtInterval &, double stepSize, int maxMinSteps, QList< double > ticks[QwtScaleDiv::NTickTypes]) const
 Calculate ticks for an interval.
QList< double > buildMajorTicks (const QwtInterval &interval, double stepSize) const
 Calculate major ticks for an interval.
void buildMinorTicks (const QList< double > &majorTicks, int maxMinorSteps, double stepSize, QList< double > &minorTicks, QList< double > &mediumTicks) const
 Calculate minor/medium ticks for major ticks.

Detailed Description

A scale engine for linear scales.

The step size will fit into the pattern $\left\{ 1,2,5\right\} \cdot 10^{n}$, where n is an integer.


Constructor & Destructor Documentation

Constructor

Parameters:
baseBase of the scale engine
See also:
setBase()

Member Function Documentation

QwtInterval QwtLinearScaleEngine::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:
intervalInterval
stepSizeStep size
Returns:
Aligned interval
void QwtLinearScaleEngine::autoScale ( int  maxNumSteps,
double &  x1,
double &  x2,
double &  stepSize 
) const [virtual]

Align and divide an interval

Parameters:
maxNumStepsMax. number of steps
x1First limit of the interval (In/Out)
x2Second limit of the interval (In/Out)
stepSizeStep size (Out)
See also:
setAttribute()

Implements QwtScaleEngine.

Reimplemented in QwtDateScaleEngine.

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

Calculate major ticks for an interval.

Parameters:
intervalInterval
stepSizeStep size
Returns:
Calculated ticks
void QwtLinearScaleEngine::buildMinorTicks ( const QList< double > &  majorTicks,
int  maxMinorSteps,
double  stepSize,
QList< double > &  minorTicks,
QList< double > &  mediumTicks 
) const [protected]

Calculate minor/medium ticks for major ticks.

Parameters:
majorTicksMajor ticks
maxMinorStepsMaximum number of minor steps
stepSizeStep size
minorTicksArray to be filled with the calculated minor ticks
mediumTicksArray to be filled with the calculated medium ticks
void QwtLinearScaleEngine::buildTicks ( const QwtInterval interval,
double  stepSize,
int  maxMinorSteps,
QList< double >  ticks[QwtScaleDiv::NTickTypes] 
) const [protected]

Calculate ticks for an interval.

Parameters:
intervalInterval
stepSizeStep size
maxMinorStepsMaximum number of minor steps
ticksArrays to be filled with the calculated ticks
See also:
buildMajorTicks(), buildMinorTicks
QwtScaleDiv QwtLinearScaleEngine::divideScale ( double  x1,
double  x2,
int  maxMajorSteps,
int  maxMinorSteps,
double  stepSize = 0.0 
) const [virtual]

Calculate a scale division for an interval.

Parameters:
x1First interval limit
x2Second interval limit
maxMajorStepsMaximum for the number of major steps
maxMinorStepsMaximum number of minor steps
stepSizeStep size. If stepSize == 0, the engine calculates one.
Returns:
Calculated scale division

Implements QwtScaleEngine.

Reimplemented in QwtDateScaleEngine.

List of all members.

 All Classes Functions Variables Typedefs Enumerations Enumerator