Qwt User's Guide  6.0.2
Public Member Functions | Protected Member Functions
QwtLog10ScaleEngine Class Reference

#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
- Public Member Functions inherited from QwtScaleEngine
 QwtScaleEngine ()
virtual ~QwtScaleEngine ()
Attributes attributes () const
double lowerMargin () const
double reference () const
void setAttribute (Attribute, bool on=true)
void setAttributes (Attributes)
void setMargins (double lower, double upper)
void setReference (double reference)
bool testAttribute (Attribute) const
double upperMargin () const

Protected Member Functions

QwtInterval align (const QwtInterval &, double stepSize) const
QList< double > buildMajorTicks (const QwtInterval &interval, double stepSize) const
QList< double > buildMinorTicks (const QList< double > &majorTicks, int maxMinMark, double step) const
void buildTicks (const QwtInterval &, double stepSize, int maxMinSteps, QList< double > ticks[QwtScaleDiv::NTickTypes]) const
QwtInterval log10 (const QwtInterval &) const
QwtInterval pow10 (const QwtInterval &) const
- Protected Member Functions inherited from QwtScaleEngine
QwtInterval buildInterval (double v) const
bool contains (const QwtInterval &, double val) const
double divideInterval (double interval, int numSteps) const
QList< double > strip (const QList< double > &, const QwtInterval &) const

Additional Inherited Members

- Public Types inherited from QwtScaleEngine
enum  Attribute {
  NoAttribute = 0x00,
  IncludeReference = 0x01,
  Symmetric = 0x02,
  Floating = 0x04,
  Inverted = 0x08
}
typedef QFlags< AttributeAttributes

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:
intervalInterval
stepSizeStep size
Returns:
Aligned interval
void QwtLog10ScaleEngine::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:
QwtScaleEngine::setAttribute()

Implements QwtScaleEngine.

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

Calculate major ticks for an interval.

Parameters:
intervalInterval
stepSizeStep 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:
majorTicksMajor ticks
maxMinStepsMaximum number of minor steps
stepSizeStep size
void QwtLog10ScaleEngine::buildTicks ( const QwtInterval interval,
double  stepSize,
int  maxMinSteps,
QList< double >  ticks[QwtScaleDiv::NTickTypes] 
) const
protected

Calculate ticks for an interval.

Parameters:
intervalInterval
maxMinStepsMaximum number of minor steps
stepSizeStep size
ticksArrays 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:
x1First interval limit
x2Second interval limit
maxMajStepsMaximum for the number of major steps
maxMinStepsMaximum number of minor steps
stepSizeStep 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.