panZoomUpdate method

void panZoomUpdate(
  1. PointerPanZoomUpdateEvent e
)

Implementation

void panZoomUpdate(PointerPanZoomUpdateEvent e) {
  if (!_trackpad) return;
  final focal = e.localPosition;
  final pan = options.dragPan ? e.pan - _trackpadLast : Offset.zero;
  _trackpadLast = e.pan;
  final zoomBy = options.scrollZoom && e.scale > 0 && _trackpadScale > 0
      ? math.log(e.scale / _trackpadScale) / math.ln2
      : 0.0;
  _trackpadScale = e.scale;
  final turn = _pinchTurns
      ? -(e.rotation - _trackpadTurn) * 180 / math.pi
      : 0.0;
  _trackpadTurn = e.rotation;
  _panTotal += pan;
  _zoomTotal += zoomBy;
  _turnTotal += turn;
  target.jump(
    MapGestureStep(
      from: focal,
      to: focal + pan,
      around: focal,
      zoomBy: zoomBy,
      turn: turn,
    ),
  );
  _lastFocal = focal;
  _record(e.timeStamp);
}