calculateAdaptiveStep method
Implementation
double calculateAdaptiveStep(double currentScaleValue) {
final rawStep = 80 / currentScaleValue;
final magnitude = pow(10, (log(rawStep) / ln10).floor()).toDouble();
final remainder = rawStep / magnitude;
if (remainder < 1.5) return magnitude;
if (remainder < 3.5) return 2 * magnitude;
if (remainder < 7.5) return 5 * magnitude;
return 10 * magnitude;
}