normalized method

num normalized(
  1. num selfRangeMin,
  2. num selfRangeMax, [
  3. num normalizedRangeMin = 0.0,
  4. num normalizedRangeMax = 1.0,
])

Normalizes this number from its own range to a target range.

For example, normalizing 260 from range 0–300 to 0.0–1.0 will return: 0.8666666666666667

Formula:

normalized = (toMax - toMin) *
             ((value - fromMin) / (fromMax - fromMin)) +
             toMin

Example:

print(260.normalized(0.0, 300)); // 0.866...

Implementation

num normalized(
  num selfRangeMin,
  num selfRangeMax, [
  num normalizedRangeMin = 0.0,
  num normalizedRangeMax = 1.0,
]) {
  return (normalizedRangeMax - normalizedRangeMin) *
          ((this - selfRangeMin) / (selfRangeMax - selfRangeMin)) +
      normalizedRangeMin;
}