getInterpolation<T> method

double getInterpolation<T>({
  1. required MultiStateSheetExtent<T> extent,
  2. required double offset,
})

Calculates the interpolation value between two snapping states.

  • extent: The current extent of the sheet.
  • offset: The current offset of the sheet.
  • Returns: A value between 0 (start of the state) and 1 (end of the state).

Implementation

double getInterpolation<T>(
    {required MultiStateSheetExtent<T> extent, required double offset}) {
  final (firstOffset, lastOffset) = getClosestOffsets(offset, extent);

  return firstOffset != lastOffset
      ? lerpBetween(
          offset,
          0.0,
          1.0,
          firstOffset,
          lastOffset,
        )
      : 0.0;
}