onHintTick method
- @protected
Shift domain viewport on hint animation ticks.
Implementation
@protected
void onHintTick() {
final percent = hintAnimationPercent;
final scaleFactor = _lerpDouble(
_initialViewportScalingFactor,
_targetViewportScalingFactor,
percent,
);
var translatePx = _lerpDouble(
_initialViewportTranslatePx,
_targetViewportTranslatePx,
percent,
);
// If there is a scale factor animation, need to scale the translatePx so
// the animation appears to be zooming in on the viewport when there is no
// [maxHintTranslate] provided.
//
// If there is a translate hint, the animation will still first zoom in
// and then translate the [maxHintTranslate] amount.
if (_initialViewportScalingFactor != _targetViewportScalingFactor) {
translatePx = translatePx * percent;
}
final chart = this.chart!;
chart.domainAxis!.setViewportSettings(
scaleFactor,
translatePx,
drawAreaWidth: chart.drawAreaBounds.width,
);
if (percent >= 1.0) {
stopHintAnimation();
chart.redraw();
} else {
chart.redraw(skipAnimation: true, skipLayout: true);
}
}