rotate method

void rotate(
  1. Key key,
  2. double angleRad, {
  3. bool merge = true,
})

Implementation

void rotate(Key key, double angleRad, {bool merge = true}) {
  final old = findByKey(key);
  if (old == null) {
    debugPrint(
        'Warning: Attempted to rotate non-existent overlay with key: $key');
    return;
  }

  final center = old.center;
  final newOverlay = old.copyWith(
    corners: old.corners.rotate(angleRad, anchor: center),
  );

  perform(
    UpdateOverlayOp(oldOverlay: old, newOverlay: newOverlay),
    merge: merge,
  );
  _options.onSpatialUpdate?.call(newOverlay, old);
  scheduleAutoSave();
}