translate method

Offset translate(
  1. Offset offset
)

Translates the given offset based on scroll and bounce positions. Uses Alignment values to determine the proportion of movement applied.

Implementation

Offset translate(Offset offset) {
  if (isSizedLayout) return Offset.zero;

  // Convert Alignment.y (-1.0 to 1.0) to a 0.0 to 1.0 factor.
  final double scrollFactor = (alignment.y + 1) / 2;
  final double bounceFactor = (bouncingAlignment.y + 1) / 2;

  // Apply scroll offset based on alignment factor.
  double y = offset.dy - position.pixels * scrollFactor;

  // Apply bounce offset based on bouncing alignment factor.
  y += position.lentPixels * -bounceFactor;

  return Offset(offset.dx, y);
}