flutter_turtle
flutter_turtle 是 Flutter 的一个简单的海龟图形实现。它仅使用自定义画家通过一系列类似 Logo 的命令来绘制图形。
我为什么要这样做?
创建自己的DSL总是很有趣!
示例
一个快速的例子
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text(widget.title)),
body: TurtleView(
child: Container(),
commands: [
PenDown(),
SetColor((_) => Color(0xffff9933)),
SetStrokeWidth((_) => 2),
Repeat((_) => 20, [
Repeat((_) => 180, [
Forward((_) => 25.0),
Right((_) => 20),
]),
Right((_) => 18),
]),
PenUp(),
],
),
);
}
命令
目前支持的命令包括
海龟移动
- 落笔
- 起笔
- 左转
- 右转
- 前进
- 后退
- 设置颜色
- 设置描边宽度
- 前往
- 重置位置
- 重置方向
流程控制
- IfElse
- 重复
宏
- 设置宏
- 运行宏
杂项
- 执行