update method

void update(
  1. double deltaTime
)

Implementation

void update(double deltaTime) {
  _currentTime += deltaTime;
  final target = _target;
  if (target != null) {
    _targetPosition.setValues(target.getCenteredPositionX(), target.getCenteredPositionY());
    // extra time to reach the end point
    if (_targetTime > _currentTime - 0.05) {
      final delta = _currentTime - (_targetTime - interpolateToTargetTime);
      _currentCameraPosition.x = Lerp.ease(
          _preInterpolateCameraPosition.x, _targetPosition.x, interpolateToTargetTime, delta);
      _currentCameraPosition.y = Lerp.ease(
          _preInterpolateCameraPosition.y, _targetPosition.y, interpolateToTargetTime, delta);
    } else {
      _currentCameraPosition.setFrom(_targetPosition);
    }
    if (_useWorldBounds) {
      applyBounds(_focalPosition, _currentCameraPosition);
    } else {
      _focalPosition.setFrom(_currentCameraPosition);
    }
  }
}