5个版本 (3个破坏性更新)
0.4.0 | 2019年12月19日 |
---|---|
0.3.0 | 2019年3月21日 |
0.2.0 | 2019年1月26日 |
0.1.1 | 2019年1月13日 |
0.1.0 | 2019年1月13日 |
#16 in #aa-bb
630KB
2K SLoC
关于
fart
是我用于基于SVG的生成艺术的个人工具和框架。最初受到 Benjamin Kovach关于生成艺术基础设施和工具的优秀文章 的启发,但自从那时起一直在自己的方向上发展。
我维护 fart
仅用于自己。 如果它恰好对你有用,那就好!但这并不是旨在成为每个人、每个地方都应该使用的创建Rust艺术的框架。如果你提交一个问题,我可能会或可能不会回复,更不用说修复它了。如果你提交一个pull请求,我可能会或可能不会回复,也可能会或可能不会合并它。
如果你想用Rust制作生成艺术,可能比 fart
更好地查看 nannou
!
安装
cargo install fart-cli
快速开始
创建一个新的 fart
项目
$ fart new my-cool-project
运行 fart watch
以自动构建你的项目,并在每次更改时生成SVG。
$ cd my-cool-project/
$ fart watch
对你的项目进行黑客攻击!继续在浏览器或你偏好的SVG查看器中刷新 my-cool-project/images/latest.svg
,以查看你的结果。
命令行界面
要查看完整的命令行命令和标志列表,请运行 fart help [子命令]
。
fart new<名称>
创建一个名为 fart
的新项目,名为 <name>
。
fart run
编译并运行一个 fart
项目,生成一个新的、带时间戳的SVG渲染,并自动为你提交。
fart watch
观看一个 fart
项目,自动在每次更改时构建和运行它。为您保存和提交带时间戳的 SVG,以便您可以查看项目的演变。
fart serve
在本地 HTTP 服务器上提供项目及其渲染的 SVG。自动监视项目的更改,并在每次更改时重新构建和重新运行,类似于 fart watch
。它提供了一个具有实时预览的 Web UI,显示构建和程序日志,并提供表单小部件以交互式调整 fart::user_const!
。
库
包含生成 SVG、构建场景以及与数字和随机数生成器一起工作的实用程序。
模块
fart::prelude
常用特性和函数。
适用于大多数项目,可全局导入全部内容。
use fart::prelude::*;
fart::canvas
画布是一组绘制的路径,可以渲染成 SVG。
fart::path
在 SVG 中绘制的路径。路径由一系列线命令组成,并具有关联的颜色。
fart::process
用于从处理风格创建图像的辅助工具,更新->绘制->更新->绘制->... 循环。
fart::aabb
2D 平行于轴的边界框 (AABB) 和 AABB 树。对于快速但不精确的检测对象之间的碰撞/交叉/包含很有用。
fart::geom
基于 euclid
构建的 2D 计算几何算法的杂乱组合。
重新导出
fart
有许多其他包的重导出,让您迅速上手!
-
fart::euclid
:重导出euclid
包。 -
fart::failure
:重导出failure
包。 -
fart::noise
:重导出noise
包。 -
fart::num_traits
:重导出num-traits
包。 -
fart::rand
:重导出rand
包。
依赖项
~16MB
~61K SLoC