#mesh #half-edge #3d #graphics #geometry

tri-mesh

一个包含基本操作的三角形网格数据结构

8个版本 (5个破坏性版本)

0.6.0 2022年11月2日
0.5.0 2020年2月29日
0.4.0 2019年3月14日
0.3.0 2019年2月27日
0.1.2 2019年1月16日

#885 in 数据结构

Download history 20/week @ 2024-03-08 7/week @ 2024-03-15 3/week @ 2024-03-22 24/week @ 2024-03-29 5/week @ 2024-04-05 13/week @ 2024-04-12 10/week @ 2024-04-19 6/week @ 2024-04-26 2/week @ 2024-05-10 1/week @ 2024-05-17 6/week @ 2024-05-24 4/week @ 2024-05-31 15/week @ 2024-06-07 28/week @ 2024-06-14 14/week @ 2024-06-21

每月64次下载

MIT许可

210KB
5K SLoC

tri-mesh

crates.io Docs.rs Continuous integration MIT licensed

此包包含半边数据结构的实现,该结构表示三角形网格,且在创建、编辑、遍历和计算该网格方面效率高。网格可以轻松地创建和导出为高效的可视化格式。

此包还包含基本的功能来安全地操作此网格数据结构,并可用于实现更高级的操作,例如

  • 半边遍历器以遍历网格
  • 原始数据迭代器(顶点、半边、边、面)
  • 编辑功能(例如分割边、折叠边、翻转边)

最后,还提供了一组更多或更少的操作,例如

  • 影响顶点位置的转换(例如移动单个顶点或旋转整个网格)
  • 对顶点、边和面的度量(例如顶点位置、面的面积)
  • 质量功能(例如递归翻转边以提高三角形质量,折叠小面)
  • 交点功能(例如面/射线交点,边/点交点)
  • 合并用于合并整个网格(例如将一个网格附加到另一个网格或合并网格中的重叠原始数据)
  • 分割功能(例如克隆网格的子集或分割两个网格的交集)

请参阅文档以获取更多详细信息。

依赖关系

~2.4–4MB
~79K SLoC