25 lines
539 B
JavaScript
25 lines
539 B
JavaScript
import {
|
|
log10
|
|
} from '../../util/Math';
|
|
|
|
/**
|
|
* Get step size for given range and number of steps.
|
|
*
|
|
* @param {Object} range
|
|
* @param {number} range.min
|
|
* @param {number} range.max
|
|
*/
|
|
export function getStepSize(range, steps) {
|
|
|
|
var minLinearRange = log10(range.min),
|
|
maxLinearRange = log10(range.max);
|
|
|
|
var absoluteLinearRange = Math.abs(minLinearRange) + Math.abs(maxLinearRange);
|
|
|
|
return absoluteLinearRange / steps;
|
|
}
|
|
|
|
export function cap(range, scale) {
|
|
return Math.max(range.min, Math.min(range.max, scale));
|
|
}
|