我正在尝试使用flutter customPainter库和二次贝塞尔曲线绘制下面的图片。我该如何绘制这个形状?
我的密码:
@override
void paint(Canvas canvas, Size size) {
var paint = Paint();
paint.color = Colors.white;
paint.style = PaintingStyle.fill; // Change this to fill
final path = Path();
path.moveTo(-5, size.height / 2);
path.quadraticBezierTo(
size.width / 2,
-50,
size.width + 5,
size.height / 2,
);
path.close();
canvas.drawPath(path, paint);
}
@override
bool shouldRepaint(CustomPainter oldDelegate) => true;
}
1条答案
按热度按时间2ul0zpep1#
我有点晚了,但这可能会有利于某人在未来。你正在尝试做的是创建3曲线_两个是凹的和meddle一个是凸的。但在你的代码中,你只有一条曲线,要解决这个问题,添加两个更多的quadraticBezier我使用Kotlin的“f”后,每个数字是浮点值我不知道它是否是相同的 dart ,但你可以计算出来: