getClip method
Returns a description of the clip given that the render object being clipped is of the given size.
Implementation
@override
Path getClip(Size size) {
var path = new Path();
path.lineTo(0, 0);
var nX = 0.0, nY = 0.0;
for (var i = 0; i < points.length; i++) {
var prevX = nX, prevY = nY;
nX = points[i].x;
nY = points[i].y;
var dir = points[i].dir;
var firstStart;
if (dir == 0) {
firstStart = Offset((size.width * prevX) / 12, (size.height * nY) / 12);
} else {
firstStart = Offset((size.width * nX) / 12, (size.height * prevY) / 12);
}
var firstEnd = Offset((size.width * nX) / 12, (size.height * nY) / 12);
path.quadraticBezierTo(
firstStart.dx, firstStart.dy, firstEnd.dx, firstEnd.dy);
}
path.lineTo(size.width, 0);
path.close();
return path;
}