anchor.diff:      // animate velocity only if there is no scale change and a significant magnitude
       if(_scaleBefore / _scale == 1.0 && magnitude >= 400.0 ){
         final Offset direction = details.velocity.pixelsPerSecond / magnitude;
  -      animatePosition( _position, clampPosition(_position + direction * 100.0), magnitude);
  +      animatePosition( _position, clampPosition(_position + direction * 100.0));
       }
   
     }
  
positive.code: 
    void onScaleStart(ScaleStartDetails details) {
      _scaleBefore = scaleStateAwareScale();
      _positionBefore = _position;
      _normalizedPosition = details.focalPoint - _position;
      _scaleAnimationController.stop();
      _positionAnimationController.stop();
  
negative.code:       ..fling(velocity: 0.4);
    }
  
     void animatePosition(Offset from, Offset to) {
      _positionAnimation = Tween<Offset>(begin: from, end: to)
          .animate(_positionAnimationController);
      _positionAnimationController
        ..value = 0.0
        ..fling(velocity: 0.4);
    }
  
    @override
  