isOutbounding function

bool isOutbounding({
  1. required double dx,
  2. required double dy,
  3. required Offset offset,
  4. required Offset scroll,
  5. required Size itemSize,
  6. required Size gridSize,
})

Computing bounding

Implementation

bool isOutbounding({
  required double dx,
  required double dy,
  required Offset offset,
  required Offset scroll,
  required Size itemSize,
  required Size gridSize,
}) {
  final tx = dx + scroll.dx;
  final ty = dy + scroll.dy;
  final left = tx - offset.dx - itemSize.width / 2 - 16.0;
  final top = ty - offset.dy - itemSize.height / 2 - 16.0;

  final inx = left > -itemSize.width && left < gridSize.width;
  final iny = top > -itemSize.height && top < gridSize.height;

  return !inx || !iny;
}