4 个版本
0.4.1 | 2024 年 4 月 18 日 |
---|---|
0.4.0 | 2024 年 4 月 15 日 |
0.3.6 | 2024 年 4 月 12 日 |
#52 在 科学
10,530 每月下载量
用于 dda-voxelize
1MB
1K SLoC
earcut-rs
Earcut 多边形三角剖分库的 Rust 版本,从头开始实现,部分参考了 donbright/earcutr。
- 基于最新的 Earcut 2.2.4 版本。
- 设计用于避免不必要的内存分配。您可以为多次三角剖分重用内部缓冲区和输出索引向量。
- (实验性) 一个额外的模块,
utils3d
,可以在三角剖分之前将 3D 共面多边形旋转到 2D 平面。 - 许可证: ISC
基准测试
在 Macbook Pro (M1 Pro) 上
多边形 | earcut.hpp | earcut-rs (0.4.1) | earcutr (0.4.3) |
---|---|---|---|
bad_hole | 3.574 µs/i | 4.623 µs/i | 4.415 µs/i |
构建 | 397 ns/i | 195 ns/i | 604 ns/i |
退化 | 142 ns/i | 45 ns/i | 206 ns/i |
dude | 5.061 µs/i | 6.496 µs/i | 8.096 µs/i |
empty_square | 195 ns/i | 74 ns/i | 331 ns/i |
water | 459.6 µs/i | 574.5 µs/i | 801.3 µs/i |
water2 | 334.1 µs/i | 393.9 µs/i | 450.3 µs/i |
water3 | 13.12 µs/i | 19.21 µs/i | 23.46 µs/i |
water3b | 1.340 µs/i | 1.345 µs/i | 2.165 µs/i |
water4 | 81.48 µs/i | 110.6 µs/i | 154.1 µs/i |
water_huge | 6.906 ms/i | 11.0k ms/i | 10.90 ms/i |
water_huge2 | 15.38 ms/i | 23.60 ms/i | 22.35 ms/i |
(Earcutr 不是基于最新的 Earcut.)