initScaleAnimation method

void initScaleAnimation(
  1. ScaleAnimationConfig config
)

initialize the scale animation of current slice

Implementation

void initScaleAnimation(ScaleAnimationConfig config) {
  if (!config.enabled) {
    scaleAnimation = ConstantTween<double>(1).animate(widget.controller);
    return;
  }

  List<TweenSequenceItem<double>> sequenceItemList = [];
  if (config.animationStartDelay > 0) {
    sequenceItemList.add(
        TweenSequenceItem(
            tween: ConstantTween(0),
            weight: config.animationStartDelay
        )
    );
  }

  sequenceItemList.add(
    TweenSequenceItem(tween: Tween(begin: 0, end: 1), weight: 1 - config.animationFinishDelay - config.animationStartDelay),
  );

  if (config.animationFinishDelay > 0) {
    sequenceItemList.add(
        TweenSequenceItem(
            tween: ConstantTween(1),
            weight: config.animationFinishDelay
        )
    );
  }

  scaleAnimation = TweenSequence<double>(sequenceItemList).animate(widget.controller);
}