10 #ifndef QWT_SCALE_ENGINE_H
11 #define QWT_SCALE_ENGINE_H
13 #include "qwt_global.h"
14 #include "qwt_scale_div.h"
15 #include "qwt_interval.h"
25 static double ceilEps(
double value,
double intervalSize );
26 static double floorEps(
double value,
double intervalSize );
28 static double divideEps(
double interval,
double steps );
30 static double divideInterval(
double interval,
31 int numSteps, uint base );
60 IncludeReference = 0x01,
84 void setBase( uint base );
87 void setAttribute(
Attribute,
bool on =
true );
93 void setReference(
double reference );
94 double reference()
const;
96 void setMargins(
double lower,
double upper );
97 double lowerMargin()
const;
98 double upperMargin()
const;
108 virtual void autoScale(
int maxNumSteps,
109 double &x1,
double &x2,
double &stepSize )
const = 0;
123 virtual QwtScaleDiv divideScale(
double x1,
double x2,
124 int maxMajorSteps,
int maxMinorSteps,
125 double stepSize = 0.0 )
const = 0;
131 bool contains(
const QwtInterval &,
double val )
const;
132 QList<double> strip(
const QList<double>&,
const QwtInterval & )
const;
134 double divideInterval(
double interval,
int numSteps )
const;
157 double &x1,
double &x2,
double &stepSize )
const;
160 int numMajorSteps,
int numMinorSteps,
161 double stepSize = 0.0 )
const;
168 const QwtInterval &,
double stepSize,
int maxMinSteps,
171 QList<double> buildMajorTicks(
172 const QwtInterval &interval,
double stepSize )
const;
174 void buildMinorTicks(
const QList<double>& majorTicks,
175 int maxMinorSteps,
double stepSize,
176 QList<double> &minorTicks, QList<double> &mediumTicks )
const;
197 double &x1,
double &x2,
double &stepSize )
const;
200 int numMajorSteps,
int numMinorSteps,
201 double stepSize = 0.0 )
const;
207 const QwtInterval &,
double stepSize,
int maxMinSteps,
210 QList<double> buildMajorTicks(
211 const QwtInterval &interval,
double stepSize )
const;
213 void buildMinorTicks(
const QList<double>& majorTicks,
214 int maxMinorSteps,
double stepSize,
215 QList<double> &minorTicks, QList<double> &mediumTicks )
const;
Base class for scale engines.
Definition: qwt_scale_engine.h:45
QFlags< Attribute > Attributes
Layout attributes.
Definition: qwt_scale_engine.h:79
A class representing a scale division.
Definition: qwt_scale_div.h:36
virtual QwtScaleDiv divideScale(double x1, double x2, int maxMajorSteps, int maxMinorSteps, double stepSize=0.0) const =0
Calculate a scale division.
A scale engine for linear scales.
Definition: qwt_scale_engine.h:150
Number of valid tick types.
Definition: qwt_scale_div.h:55
Arithmetic including a tolerance.
Definition: qwt_scale_engine.h:22
virtual void autoScale(int maxNumSteps, double &x1, double &x2, double &stepSize) const =0
A scale engine for logarithmic scales.
Definition: qwt_scale_engine.h:190
A class representing an interval.
Definition: qwt_interval.h:26
Attribute
Definition: qwt_scale_engine.h:54