getAngleOfValue method

double getAngleOfValue(
  1. double newValue
)

Return angle of knob in degree corresponding to the provided value

Implementation

double getAngleOfValue(double newValue) {
  var min = AngleHelper.radian(value.startAngle);
  var max = AngleHelper.radian(value.endAngle);
  min = AngleHelper.normalize(min);
  while (min > max) {
    // both min and max are positive and in the correct order.
    max += 2 * math.pi;
  }
  var angle = (max - min) /
          (value.maximum - value.minimum) *
          (newValue - value.minimum) +
      min;
  angle = AngleHelper.normalize(angle - math.pi / 2);
  // while (angle < min) {
  //   // set angle after min angle
  //   angle += 2 * math.pi;
  // }
  return AngleHelper.degree(angle);
}