Qwt User's Guide  5.2.3
Public Member Functions | Protected Member Functions
QwtLinearScaleEngine Class Reference

#include <qwt_scale_engine.h>

Inheritance diagram for QwtLinearScaleEngine:
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 ()
int attributes () const
double lowerMargin () const
double reference () const
void setAttribute (Attribute, bool on=true)
void setAttributes (int)
void setMargins (double lower, double upper)
void setReference (double reference)
bool testAttribute (Attribute) const
double upperMargin () const

Protected Member Functions

QwtDoubleInterval align (const QwtDoubleInterval &, double stepSize) const
- Protected Member Functions inherited from QwtScaleEngine
QwtDoubleInterval buildInterval (double v) const
bool contains (const QwtDoubleInterval &, double val) const
double divideInterval (double interval, int numSteps) const
QwtValueList strip (const QwtValueList &, const QwtDoubleInterval &) const

Additional Inherited Members

- Public Types inherited from QwtScaleEngine
enum  Attribute {
  NoAttribute = 0,
  IncludeReference = 1,
  Symmetric = 2,
  Floating = 4,
  Inverted = 8
}

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.


Member Function Documentation

QwtDoubleInterval QwtLinearScaleEngine::align ( const QwtDoubleInterval 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.

QwtScaleDiv QwtLinearScaleEngine::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(), QwtScaleEngine::subDivide()

Implements QwtScaleEngine.

QwtScaleTransformation * QwtLinearScaleEngine::transformation ( ) const
virtual

Return a transformation, for linear scales

Implements QwtScaleEngine.