diff --git a/apps/shared/curve_view_range.cpp b/apps/shared/curve_view_range.cpp index 9b671ee09..cf27602d2 100644 --- a/apps/shared/curve_view_range.cpp +++ b/apps/shared/curve_view_range.cpp @@ -15,11 +15,9 @@ uint32_t CurveViewRange::rangeChecksum() { return Ion::crc32Word((uint32_t *)data, dataLengthInBytes/sizeof(uint32_t)); } -float CurveViewRange::computeGridUnit(Axis axis, float range) const { +float CurveViewRange::computeGridUnit(float minNumberOfUnits, float maxNumberOfUnits, float range) const { int a = 0; int b = 0; - float maxNumberOfUnits = (axis == Axis::X) ? k_maxNumberOfXGridUnits : k_maxNumberOfYGridUnits; - float minNumberOfUnits = (axis == Axis::X) ? k_minNumberOfXGridUnits : k_minNumberOfYGridUnits; constexpr int unitsCount = 3; float units[unitsCount] = {k_smallGridUnitMantissa, k_mediumGridUnitMantissa, k_largeGridUnitMantissa}; for (int k = 0; k < unitsCount; k++) { diff --git a/apps/shared/curve_view_range.h b/apps/shared/curve_view_range.h index 8cc2bd4e2..8cda5fdfe 100644 --- a/apps/shared/curve_view_range.h +++ b/apps/shared/curve_view_range.h @@ -19,8 +19,12 @@ public: virtual float yMax() const = 0; const float xCenter() const { return (xMin() + xMax()) / 2; } const float yCenter() const { return (yMin() + yMax()) / 2; } - virtual float xGridUnit() const { return computeGridUnit(Axis::X, xMax() - xMin()); } - virtual float yGridUnit() const { return computeGridUnit(Axis::Y, yMax() - yMin()); } + virtual float xGridUnit() const { + return computeGridUnit(k_minNumberOfXGridUnits, k_maxNumberOfXGridUnits, xMax() - xMin()); + } + virtual float yGridUnit() const { + return computeGridUnit(k_minNumberOfYGridUnits, k_maxNumberOfYGridUnits, yMax() - yMin()); + } constexpr static float k_maxNumberOfXGridUnits = 18.0f; constexpr static float k_maxNumberOfYGridUnits = 13.0f; private: @@ -32,7 +36,7 @@ private: constexpr static float k_smallGridUnitMantissa = 1.0f; constexpr static float k_mediumGridUnitMantissa = 2.0f; constexpr static float k_largeGridUnitMantissa = 5.0f; - float computeGridUnit(Axis axis, float range) const; + float computeGridUnit(float minNumberOfUnits, float maxNumberOfUnits, float range) const; }; }