4 个版本 (重大更改)
0.4.0 | 2024年1月28日 |
---|---|
0.3.0 | 2024年1月7日 |
0.2.0 | 2023年3月28日 |
0.1.0 | 2022年12月18日 |
131 在 数学 中
2,665 每月下载量
在 fj-text 中使用
320KB
5.5K SLoC
Bezier-rs
二维图形上下文中贝塞尔线段和形状的计算几何算法。
通过交互式文档玩耍,以有趣的方式可视化每个 API 函数
查看交互式 API
Bezier-rs 是为 Graphite(一个开源二维矢量图形编辑器)的需求而构建的。我们希望它对其他人也可能有用,但目前 Graphite 是其主要用户。欢迎提出关于新功能、代码清理、用户体验增强、性能改进和文档澄清的拉取请求。
该库目前提供处理单个贝塞尔曲线段和开式或闭式多段路径(我们称之为 子路径)的函数。
未来,该库将扩展到包括复合路径(多个子路径形成一个单独的形状,其中绕行顺序确定内部或外部)以及路径之间的操作(例如,布尔操作、凸包)。非常欢迎对这些附加功能的拉取请求。
Bezier-rs 受到 Bezier.js 和 Pomax 的 贝塞尔曲线入门 的启发。Bezier-rs 不是 Bezier.js 的移植,因此单个线段贝塞尔曲线的 API 有一些差异,目标是提供更广泛的范围,提供超越单个线段算法(如上所述)的算法,最终服务于完整的矢量形状。
术语
Graphite 和 Bezier-rs 使用以下术语来表示矢量数据。以下描述针对三次贝塞尔曲线。
依赖项
~3.5MB
~96K SLoC