title: Flutter change wave quadraticBezierTo points
body: <p>with this below implementation code we have this custom shape design:</p>
  
  <p><a href="https://i.stack.imgur.com/WyhN0.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/WyhN0.png" alt="enter image description here"></a></p>
  
  <p>and in this design i want to change that to:</p>
  
  <p><a href="https://i.stack.imgur.com/l25tS.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/l25tS.png" alt="enter image description here"></a></p>
  
  <p>as i just learn create custom shape i can't do that, is any body can help me how to achieve that?</p>
  
  <p>thanks</p>
  
  <pre><code>import 'package:flutter/material.dart';
  
  class WaveClipperTwo extends CustomClipper&lt;Path&gt; {
    bool reverse;
  
    WaveClipperTwo({this.reverse = false});
  
    @override
    Path getClip(Size size) {
      var path = Path();
      if(!reverse) {
        path.lineTo(0.0, size.height - 20);
  
        var firstControlPoint = Offset(size.width / 4, size.height);
        var firstEndPoint = Offset(size.width / 2.25, size.height - 30.0);
        path.quadraticBezierTo(firstControlPoint.dx, firstControlPoint.dy,
            firstEndPoint.dx, firstEndPoint.dy);
  
        var secondControlPoint =
            Offset(size.width - (size.width / 3.25), size.height - 65);
        var secondEndPoint = Offset(size.width, size.height - 40);
        path.quadraticBezierTo(secondControlPoint.dx, secondControlPoint.dy,
            secondEndPoint.dx, secondEndPoint.dy);
  
        path.lineTo(size.width, size.height - 40);
        path.lineTo(size.width, 0.0);
        path.close();
      }else{
        path.lineTo(0.0, 20);
  
        var firstControlPoint = Offset(size.width / 4, 0.0);
        var firstEndPoint = Offset(size.width / 2.25, 30.0);
        path.quadraticBezierTo(firstControlPoint.dx, firstControlPoint.dy,
            firstEndPoint.dx, firstEndPoint.dy);
  
        var secondControlPoint =
            Offset(size.width - (size.width / 3.25), 65);
        var secondEndPoint = Offset(size.width, 40);
        path.quadraticBezierTo(secondControlPoint.dx, secondControlPoint.dy,
            secondEndPoint.dx, secondEndPoint.dy);
  
        path.lineTo(size.width, size.height);
        path.lineTo(0.0, size.height);
        path.close();
      }
  
      return path;
    }
  
    @override
    bool shouldReclip(CustomClipper&lt;Path&gt; oldClipper) =&gt; false;
  }
  </code></pre>