27#ifndef QWT_SCALE_ENGINE_H
28#define QWT_SCALE_ENGINE_H
30#include "qwt_global.h"
31#include "qwt_scale_div.h"
48 static double ceilEps(
double value,
double intervalSize);
50 static double floorEps(
double value,
double intervalSize);
53 static double divideEps(
double intervalSize,
double numSteps);
56 static double divideInterval(
double intervalSize,
int numSteps, uint base);
94 IncludeReference = 0x01,
117 Q_DECLARE_FLAGS(Attributes, Attribute)
123 void setBase(uint base);
128 void setAttribute(Attribute,
bool on =
true);
130 bool testAttribute(Attribute)
const;
133 void setAttributes(Attributes);
135 Attributes attributes()
const;
138 void setReference(
double);
140 double reference()
const;
143 void setMargins(
double lower,
double upper);
145 double lowerMargin()
const;
147 double upperMargin()
const;
150 virtual void autoScale(
int maxNumSteps,
double& x1,
double& x2,
double& stepSize)
const = 0;
153 virtual QwtScaleDiv divideScale(
double x1,
double x2,
int maxMajorSteps,
int maxMinorSteps,
double stepSize = 0.0)
const = 0;
162 bool contains(
const QwtInterval&,
double value)
const;
167 double divideInterval(
double intervalSize,
int numSteps)
const;
196 virtual void autoScale(
int maxNumSteps,
double& x1,
double& x2,
double& stepSize)
const override;
198 virtual QwtScaleDiv divideScale(
double x1,
double x2,
int maxMajorSteps,
int maxMinorSteps,
double stepSize = 0.0)
const override;
234 virtual void autoScale(
int maxNumSteps,
double& x1,
double& x2,
double& stepSize)
const override;
236 virtual QwtScaleDiv divideScale(
double x1,
double x2,
int maxMajorSteps,
int maxMinorSteps,
double stepSize = 0.0)
const override;
248Q_DECLARE_OPERATORS_FOR_FLAGS(QwtScaleEngine::Attributes)
表示区间的类
Definition qwt_interval.h:45
线性刻度引擎
Definition qwt_scale_engine.h:191
对数刻度引擎
Definition qwt_scale_engine.h:229
包含公差的算术运算
Definition qwt_scale_engine.h:45
A class representing a scale division/表示刻度划分的类
Definition qwt_scale_div.h:53
@ NTickTypes
Number of valid tick types
Definition qwt_scale_div.h:71
刻度引擎的基类
Definition qwt_scale_engine.h:76
Attribute
布局属性
Definition qwt_scale_engine.h:89
virtual void autoScale(int maxNumSteps, double &x1, double &x2, double &stepSize) const =0
Align and divide an interval
virtual QwtScaleDiv divideScale(double x1, double x2, int maxMajorSteps, int maxMinorSteps, double stepSize=0.0) const =0
Calculate a scale division