QwtLog10ScaleEngine Class Reference

Inheritance diagram for QwtLog10ScaleEngine:

Inheritance graph
[legend]
Collaboration diagram for QwtLog10ScaleEngine:

Collaboration graph
[legend]
List of all members.

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*.

Definition at line 167 of file qwt_scale_engine.h.

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

QwtDoubleInterval log10 (const QwtDoubleInterval &) const
QwtDoubleInterval pow10 (const QwtDoubleInterval &) const


Member Function Documentation

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.

Definition at line 636 of file qwt_scale_engine.cpp.

References QwtScaleEngine::buildInterval(), QwtScaleEngine::divideInterval(), QwtDoubleInterval::extend(), QwtScaleEngine::hiMargin(), QwtDoubleInterval::limited(), log10(), QwtScaleEngine::loMargin(), QwtDoubleInterval::maxValue(), QwtDoubleInterval::minValue(), QwtScaleEngine::reference(), QwtDoubleInterval::setInterval(), QwtScaleEngine::testAttribute(), and QwtDoubleInterval::width().

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.

Definition at line 693 of file qwt_scale_engine.cpp.

References QwtScaleEngine::attributes(), QwtScaleEngine::divideInterval(), QwtLinearScaleEngine::divideScale(), QwtScaleEngine::hiMargin(), QwtScaleDiv::invert(), QwtDoubleInterval::limited(), log10(), QwtScaleEngine::loMargin(), QwtDoubleInterval::maxValue(), QwtDoubleInterval::minValue(), QwtDoubleInterval::normalized(), QwtScaleEngine::reference(), QwtScaleEngine::setAttributes(), QwtScaleEngine::setMargins(), QwtScaleEngine::setReference(), and QwtDoubleInterval::width().

QwtDoubleInterval QwtLog10ScaleEngine::log10 const QwtDoubleInterval interval  )  const [protected]
 

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

Definition at line 899 of file qwt_scale_engine.cpp.

References QwtDoubleInterval::maxValue(), and QwtDoubleInterval::minValue().

Referenced by autoScale(), and divideScale().

QwtDoubleInterval QwtLog10ScaleEngine::pow10 const QwtDoubleInterval interval  )  const [protected]
 

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

Definition at line 909 of file qwt_scale_engine.cpp.

References QwtDoubleInterval::maxValue(), and QwtDoubleInterval::minValue().

QwtScaleTransformation * QwtLog10ScaleEngine::transformation  )  const [virtual]
 

Return a transformation, for logarithmic (base 10) scales

Implements QwtScaleEngine.

Definition at line 621 of file qwt_scale_engine.cpp.


Generated on Mon Feb 26 21:24:14 2007 for Qwt User's Guide by  doxygen 1.4.6