Loading...
Searching...
No Matches
QwtLogScaleEngine Class Reference

A scale engine for logarithmic scales. More...

`#include <qwt_scale_engine.h>`

Inheritance diagram for QwtLogScaleEngine:

## Public Member Functions

| QwtLogScaleEngine (uint base=10)
virtual | ~QwtLogScaleEngine ()
| Destructor.
virtual void | autoScale (int maxNumSteps, double &x1, double &x2, double &stepSize) const override
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)
virtual | ~QwtScaleEngine ()
| Destructor.
void | setBase (uint base)
uint | base () const
void | setAttribute (Attribute, bool on=true)
bool | testAttribute (Attribute) const
void | setAttributes (Attributes)
Attributes | attributes () const
void | setReference (double)
| Specify a reference point.
double | reference () const
void | setMargins (double lower, double upper)
| Specify margins at the scale's endpoints.
double | lowerMargin () const
double | upperMargin () const
void | setTransformation (QwtTransform *)
QwtTransform * | transformation () const

## 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
QList< double > | strip (const QList< double > &, const QwtInterval &) const
double | divideInterval (double intervalSize, int numSteps) const
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 }
typedef QFlags< Attribute > | Attributes

## 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 , where n is a natural number including zero.

Warning
  the step size as well as the margins are measured in decades.

Definition at line 191 of file qwt_scale_engine.h.

## Constructor & Destructor Documentation

## QwtLogScaleEngine()

QwtLogScaleEngine::QwtLogScaleEngine | ( | uint | base = 10 | ) |

explicit

Constructor

Parameters

  base | Base of the scale engine

See also
  setBase()

Definition at line 776 of file qwt_scale_engine.cpp.

## ~QwtLogScaleEngine()

QwtLogScaleEngine::~QwtLogScaleEngine | ( |  | ) |

virtual

Destructor.

Definition at line 783 of file qwt_scale_engine.cpp.

## Member Function Documentation

## align()

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

  interval | Interval
  stepSize | Step size

Returns
  Aligned interval

Definition at line 1106 of file qwt_scale_engine.cpp.

## autoScale()

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

override 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 797 of file qwt_scale_engine.cpp.

## buildMajorTicks()

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

protected

Calculate major ticks for an interval.

Parameters

  interval | Interval
  stepSize | Step size

Returns
  Calculated ticks

Definition at line 967 of file qwt_scale_engine.cpp.

## 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

  majorTicks | Major ticks
  maxMinorSteps | Maximum number of minor steps
  stepSize | Step size
  minorTicks | Array to be filled with the calculated minor ticks
  mediumTicks | Array to be filled with the calculated medium ticks

Definition at line 1002 of file qwt_scale_engine.cpp.

## buildTicks()

void QwtLogScaleEngine::buildTicks | ( | const QwtInterval & | interval,
|  | double | stepSize,
|  | int | maxMinorSteps,
|  | QList< double > | ticks[QwtScaleDiv::NTickTypes] ) const

protected

Calculate ticks for an interval.

Parameters

  interval | Interval
  maxMinorSteps | Maximum number of minor steps
  stepSize | Step size
  ticks | Arrays to be filled with the calculated ticks

See also
  buildMajorTicks(), buildMinorTicks

Definition at line 940 of file qwt_scale_engine.cpp.

## divideScale()

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

override virtual

Calculate a scale division for an interval.

Parameters

  x1 | First interval limit
  x2 | Second interval limit
  maxMajorSteps | Maximum for the number of major steps
  maxMinorSteps | Maximum number of minor steps
  stepSize | Step size. If stepSize == 0, the engine calculates one.

Returns
  Calculated scale division

Implements QwtScaleEngine.

Definition at line 879 of file qwt_scale_engine.cpp.