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数学

Download history 176/week @ 2024-04-06 283/week @ 2024-04-13 339/week @ 2024-04-20 419/week @ 2024-04-27 234/week @ 2024-05-04 185/week @ 2024-05-11 295/week @ 2024-05-18 22/week @ 2024-05-25 48/week @ 2024-06-01 44/week @ 2024-06-08 7/week @ 2024-06-15 77/week @ 2024-06-22 1469/week @ 2024-06-29 365/week @ 2024-07-06 365/week @ 2024-07-13 406/week @ 2024-07-20

2,665 每月下载量
fj-text 中使用

MIT/Apache

320KB
5.5K SLoC

crates.iodocs.rs仓库

Bezier-rs

二维图形上下文中贝塞尔线段和形状的计算几何算法。

通过交互式文档玩耍,以有趣的方式可视化每个 API 函数

查看交互式 API


Bezier-rs 是为 Graphite(一个开源二维矢量图形编辑器)的需求而构建的。我们希望它对其他人也可能有用,但目前 Graphite 是其主要用户。欢迎提出关于新功能、代码清理、用户体验增强、性能改进和文档澄清的拉取请求。

该库目前提供处理单个贝塞尔曲线段和开式或闭式多段路径(我们称之为 子路径)的函数。

未来,该库将扩展到包括复合路径(多个子路径形成一个单独的形状,其中绕行顺序确定内部或外部)以及路径之间的操作(例如,布尔操作、凸包)。非常欢迎对这些附加功能的拉取请求。

Bezier-rs 受到 Bezier.js 和 Pomax 的 贝塞尔曲线入门 的启发。Bezier-rs 不是 Bezier.js 的移植,因此单个线段贝塞尔曲线的 API 有一些差异,目标是提供更广泛的范围,提供超越单个线段算法(如上所述)的算法,最终服务于完整的矢量形状。

术语

Graphite 和 Bezier-rs 使用以下术语来表示矢量数据。以下描述针对三次贝塞尔曲线。

Manipulators Curve/Bezier Segment Subpath/Path Open/Closed

依赖项

~3.5MB
~96K SLoC