flutter - 在 Flutter 中使用线条和弧线绘制自定义形状
问题描述
我想用直线和圆弧绘制一个自定义形状,我使用了下面的代码,但输出很奇怪!
var ovalW = size.width / 4;
var ovalH = size.height / 4;
var path = Path();
path.moveTo(0, ovalH / 2);
path.arcTo(Rect.fromLTWH(0, 0, ovalW, ovalH), pi / 2, pi / 2, true);
path.lineTo(size.width - (ovalW / 2), ovalH);
path.arcTo(Rect.fromLTWH(size.width - ovalW, 0, ovalW, ovalH), 0, pi / 2, true);
path.lineTo(size.width, 0);
path.lineTo(0, 0);
path.close();
已编辑
我试图得到这样的东西:
解决方案
正如@pskink 在上述评论中所说, Path.addRRect 这样做。
对于后来看到这篇文章的人,这是最终代码:
path.addRRect(RRect.fromLTRBAndCorners(0, 0, size.width, size.height / 4, bottomRight: Radius.elliptical(size.width / 8, size.height / 8), bottomLeft: Radius.elliptical(size.width / 8, size.height / 8)));
推荐阅读
- node.js - 调试器不会在生产代码断点处停止
- ios - 在选项卡之间移动时固定导航栏
- stata - 删除缺失值
- r - 在一定频率后循环填充矩阵
- usb - 未检测到 ReSpeaker 麦克风阵列
- google-chrome - Chrome 开发工具快捷方式会覆盖 Google 文档快捷方式
- c++ - 从 STL 堆栈/队列的顶部/前面移动是否安全?
- go - 如何解决 Golang 在 golang.org/x/tools/go 中找不到包?
- r - 闪亮:根据radioButton() 中的选择启用sliderInput()
- javascript - 将 JQuery 转换为 JS 用于切换类