getClip method

  1. @override
Path getClip(
  1. Size size
)
override

Returns a description of the clip given that the render object being clipped is of the given size.

Implementation

@override
Path getClip(Size size) {
  Path path = Path();
  double notchWidth = 100;
  double notchHeight = 20;
  double notchRadius = 30;

  // Start from bottom left
  path.lineTo(size.width / 2 - notchWidth / 2, 0);

  // Create notch curve
  path.quadraticBezierTo(
    size.width / 2 - notchWidth / 2 + notchRadius,
    -notchHeight,
    size.width / 2,
    -notchHeight,
  );
  path.quadraticBezierTo(
    size.width / 2 + notchWidth / 2 - notchRadius,
    -notchHeight,
    size.width / 2 + notchWidth / 2,
    0,
  );

  path.lineTo(size.width, 0);
  path.lineTo(size.width, size.height);
  path.lineTo(0, size.height);
  path.close();
  return path;
}