m3eDialogSpringSettle function
Time a 0→1 spring needs to settle (capped at 2s).
Implementation
Duration m3eDialogSpringSettle(M3ESpring spring) {
final sim = SpringSimulation(
spring.toDescription(),
0,
1,
0,
tolerance: _settleTolerance,
);
var ms = 0;
while (ms < _maxSettle.inMilliseconds && !sim.isDone(ms / 1000)) {
ms += 4;
}
return Duration(milliseconds: ms);
}