update method
void
update(
- 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);
}
}
}