rescale method

ZoomTransform rescale(
  1. double newScale,
  2. Offset focalPoint
)

Rescales to a new scale around a focal point.

Implementation

ZoomTransform rescale(double newScale, Offset focalPoint) {
  final scaleDiff = newScale / scale;
  return ZoomTransform(
    scale: newScale,
    translateX: focalPoint.dx - (focalPoint.dx - translateX) * scaleDiff,
    translateY: focalPoint.dy - (focalPoint.dy - translateY) * scaleDiff,
  );
}