| 62 | } |
| 63 | |
| 64 | QwtScaleDiv OscScaleEngine::divideScale(double x1, double x2, int maxMajorSteps, int maxMinorSteps, |
| 65 | double stepSize) const |
| 66 | { |
| 67 | Q_UNUSED(maxMajorSteps); |
| 68 | |
| 69 | QwtInterval interval = QwtInterval(x1, x2).normalized(); |
| 70 | |
| 71 | if(qwtIntervalWidthL(interval) > std::numeric_limits<double>::max()) { |
| 72 | qWarning() << "QwtLinearScaleEngine::divideScale: overflow"; |
| 73 | return QwtScaleDiv(); |
| 74 | } |
| 75 | |
| 76 | if(interval.width() <= 0) |
| 77 | return QwtScaleDiv(); |
| 78 | |
| 79 | stepSize = interval.width() / (double)(m_majorTicks - 1); |
| 80 | |
| 81 | QwtScaleDiv scaleDiv; |
| 82 | |
| 83 | QList<double> ticks[QwtScaleDiv::NTickTypes]; |
| 84 | buildTicks(interval, stepSize, maxMinorSteps, ticks); |
| 85 | |
| 86 | scaleDiv = QwtScaleDiv(interval, ticks); |
| 87 | |
| 88 | if(x1 > x2) |
| 89 | scaleDiv.invert(); |
| 90 | |
| 91 | return scaleDiv; |
| 92 | } |
| 93 | |
| 94 | void OscScaleEngine::buildTicks(const QwtInterval &interval, double stepSize, int maxMinorSteps, |
| 95 | QList<double> ticks[QwtScaleDiv::NTickTypes]) const |
no test coverage detected