QWT API (English) 7.3.0
Qt Widget Library for Technical Applications - English API Documentation
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
QwtLogScaleEngine Class Reference

A scale engine for logarithmic scales. More...

#include <qwt_scale_engine.h>

Inheritance diagram for QwtLogScaleEngine:
QwtScaleEngine

Public Member Functions

 QwtLogScaleEngine (uint base=10)
 Constructor.
 
 ~QwtLogScaleEngine () override
 Destructor.
 
virtual void autoScale (int maxNumSteps, double &x1, double &x2, double &stepSize) const override
 Align and divide an interval.
 
virtual QwtScaleDiv divideScale (double x1, double x2, int maxMajorSteps, int maxMinorSteps, double stepSize=0.0) const override
 Calculate a scale division for an interval.
 
- Public Member Functions inherited from QwtScaleEngine
 QwtScaleEngine (uint base=10)
 Constructor.
 
void setBase (uint base)
 Set the base.
 
uint base () const
 Return base of the scale engine.
 
void setAttribute (Attribute, bool on=true)
 Set an attribute.
 
bool testAttribute (Attribute) const
 Test if an attribute is enabled.
 
void setAttributes (Attributes)
 Set attributes.
 
Attributes attributes () const
 Return scale attributes.
 
void setReference (double)
 Set the reference value.
 
double reference () const
 Return the reference value.
 
void setMargins (double lower, double upper)
 Set the margins.
 
double lowerMargin () const
 Return the margin at the lower end of the scale.
 
double upperMargin () const
 Return the margin at the upper end of the scale.
 
void setTransformation (QwtTransform *)
 Set the transformation.
 
QwtTransformtransformation () const
 Create and return a clone of the transformation of the engine.
 

Protected Member Functions

QwtInterval align (const QwtInterval &, double stepSize) const
 Align an interval to a step size.
 
void buildTicks (const QwtInterval &, double stepSize, int maxMinorSteps, 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.
 
- Protected Member Functions inherited from QwtScaleEngine
bool contains (const QwtInterval &, double value) const
 Check if an interval contains a value.
 
QList< double > strip (const QList< double > &, const QwtInterval &) const
 Strip values outside an interval.
 
double divideInterval (double intervalSize, int numSteps) const
 Divide an interval.
 
QwtInterval buildInterval (double value) const
 Build an interval around a value.
 

Additional Inherited Members

- Public Types inherited from QwtScaleEngine
enum  Attribute {
  NoAttribute = 0x00 , IncludeReference = 0x01 , Symmetric = 0x02 , Floating = 0x04 ,
  Inverted = 0x08
}
 Layout attributes. More...
 

Detailed Description

A scale engine for logarithmic 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.

Constructor & Destructor Documentation

◆ QwtLogScaleEngine()

QwtLogScaleEngine::QwtLogScaleEngine ( uint  base = 10)
explicit

Constructor.

Parameters
baseBase of the scale engine
See also
setBase()

Member Function Documentation

◆ align()

QwtInterval QwtLogScaleEngine::align ( const QwtInterval interval,
double  stepSize 
) const
protected

Align an interval to a step size.

Parameters
intervalInterval
stepSizeStep size
Returns
Aligned interval

◆ autoScale()

void QwtLogScaleEngine::autoScale ( int  maxNumSteps,
double &  x1,
double &  x2,
double &  stepSize 
) const
overridevirtual

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.

◆ buildMajorTicks()

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

Calculate major ticks for an interval.

Parameters
intervalInterval
stepSizeStep size
Returns
Calculated ticks

◆ buildMinorTicks()

void QwtLogScaleEngine::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

◆ buildTicks()

void QwtLogScaleEngine::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()

◆ divideScale()

QwtScaleDiv QwtLogScaleEngine::divideScale ( double  x1,
double  x2,
int  maxMajorSteps,
int  maxMinorSteps,
double  stepSize = 0.0 
) const
overridevirtual

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.


The documentation for this class was generated from the following files: