Нашел решение, которое я искал.
"Что-то вроде этого прекрасно работает:
class LinearHalfCurve extends Curve {
@override
double transformInternal(double t) {
if(t < 0.5) {
return t*2; // goes from 0-1.0 when t is 0-0.5
}
return 1.0; // cap to 1.0 when t is above 0.5
}
}
тогда в вашем наборе AnimatedCrossFade:
firstCurve: LinearHalfCurve(),
secondCurve: LinearHalfCurve().flipped,
Если выесли вам нужно больше причудливых кривых, вы можете сохранить внутреннюю кривую этого типа в своем пользовательском классе кривых и передать t * 2 в этот класс в первом возвращении. "