lerpDegrees static method

double lerpDegrees(
  1. double start,
  2. double target,
  3. double duration,
  4. double timeSinceStart,
)

Implementation

static double lerpDegrees(double start, double target, double duration, double timeSinceStart) {
  final range = target - start;
  if (range < -180) {
    var result = lerp(start, target + 360, duration, timeSinceStart);
    return (result >= 360) ? result - 360 : result;
  } else if (range > 180) {
    var result = lerp(start, target - 360, duration, timeSinceStart);
    return (result < 0) ? result + 360 : result;
  }
  return lerp(start, target, duration, timeSinceStart);
}