首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >clipRect无法正常工作时路径的圆角

clipRect无法正常工作时路径的圆角
EN

Stack Overflow用户
提问于 2020-10-27 09:09:44
回答 1查看 66关注 0票数 0

如何在ClipPathPath中使角变圆?

代码语言:javascript
运行
复制
class MyClipper extends CustomClipper<Path> {
  @override
  Path getClip(Size size) {
    final Path path = Path();
    path.moveTo(0, 0);
    path.lineTo(size.width - 10, 0);
    path.lineTo(size.width, size.height / 2);
    path.lineTo(size.width - 10, size.height);
    path.lineTo(0, size.height);
    path.lineTo(0, 0);
    path.close();

    return path;
  }

  @override
  bool shouldReclip(MyClipper oldClipper) => false;
}

我试着在中间添加这个,但没有给出预期的结果

代码语言:javascript
运行
复制
path.quadraticBezierTo(size.width - radius, size.height / 2 - radius, size.width + radius, size.height / 2 + radius);

尝试对此部分进行舍入

EN

回答 1

Stack Overflow用户

发布于 2020-10-28 02:41:25

首先画出这个的黑色部分:

然后使用控制点将黑色箭头之间的lineTo替换为bezier方法

quadraticBezierTo方法使用示例:

代码语言:javascript
运行
复制
path.moveTo(0, 0);
final controlPoint = Offset(1, 1);
path.quadraticBezierTo(controlPoint.dx, controlPoint.dy, 0, 2);
path.lineTo(0, 0);

这画了半个椭圆形。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64547029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档