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_double_interval.h"
25 static int compareEps(
26 double value1,
double value2,
double intervalSize);
28 static double ceilEps(
double value,
double intervalSize);
29 static double floorEps(
double value,
double intervalSize);
31 static double divideEps(
double interval,
double steps);
33 static double ceil125(
double x);
34 static double floor125(
double x);
81 void setAttribute(Attribute,
bool on =
true);
82 bool testAttribute(Attribute)
const;
84 void setAttributes(
int);
85 int attributes()
const;
87 void setReference(
double reference);
88 double reference()
const;
90 void setMargins(
double lower,
double upper);
91 double lowerMargin()
const;
92 double upperMargin()
const;
102 virtual void autoScale(
int maxNumSteps,
103 double &x1,
double &x2,
double &stepSize)
const = 0;
115 virtual QwtScaleDiv divideScale(
double x1,
double x2,
116 int maxMajSteps,
int maxMinSteps,
117 double stepSize = 0.0)
const = 0;
125 double divideInterval(
double interval,
int numSteps)
const;
145 double &x1,
double &x2,
double &stepSize)
const;
148 int numMajorSteps,
int numMinorSteps,
149 double stepSize = 0.0)
const;
155 double stepSize)
const;
160 QwtValueList ticks[QwtScaleDiv::NTickTypes])
const;
162 void buildMinorTicks(
163 const QwtValueList& majorTicks,
164 int maxMinMark,
double step,
165 QwtValueList &, QwtValueList &)
const;
167 QwtValueList buildMajorTicks(
186 double &x1,
double &x2,
double &stepSize)
const;
189 int numMajorSteps,
int numMinorSteps,
190 double stepSize = 0.0)
const;
200 double stepSize)
const;
204 QwtValueList ticks[QwtScaleDiv::NTickTypes])
const;
206 QwtValueList buildMinorTicks(
207 const QwtValueList& majorTicks,
208 int maxMinMark,
double step)
const;
210 QwtValueList buildMajorTicks(