#include "lraxisdata.h" namespace LimeReport { AxisData::AxisData() : m_rangeMin(0), m_rangeMax(0), m_minValue(0), m_maxValue(0), m_step(0), m_delta(0), m_segmentCount(4) { } AxisData::AxisData(qreal minValue, qreal maxValue) : AxisData() { m_minValue = minValue; m_maxValue = maxValue; calculateValuesAboveMax(minValue, maxValue, 4); m_delta = m_step * m_segmentCount; } int AxisData::segmentCount() const { return m_segmentCount; } qreal AxisData::rangeMin() const { return m_rangeMin; } qreal AxisData::rangeMax() const { return m_rangeMax; } qreal AxisData::minValue() const { return m_minValue; } qreal AxisData::maxValue() const { return m_maxValue; } qreal AxisData::step() const { return m_step; } qreal AxisData::delta() const { return m_delta; } void AxisData::calculateValuesAboveMax(qreal minValue, qreal maxValue, int segments) { const int delta = maxValue - minValue; int max = delta; while (max % segments != 0){ max++; } m_rangeMax = max; m_step = max / segments; m_rangeMin = minValue; m_segmentCount = segments; } }