【发布时间】:2020-08-14 02:47:47
【问题描述】:
我正在寻找一种方法,通过 Python 脚本将 TIN(不规则三角网)网格(例如景观)偏移一致的距离。过去我打电话给Blender's Solidify modifier via the API,效果很好,但我想找到一个不需要 Blender 作为依赖项的替代方案。
目前,我正在遍历每个三角形,制作每个顶点的副本,并将它们沿其父三角形的表面法线移动一定距离。在多个三角形中出现相同顶点的情况下,我计算每个法线的偏移量并使用平均值。然后我再次将顶点连接在一起以制作偏移网格。
这似乎适用于小偏移,但网格中的尖锐特征会产生自相交。
是否有提供更好方法的特定算法或库?
到目前为止,除了 Blender,我发现:
- CGAL plugin 通过this discussion
- Thickening,一个 C++ 库
- OffsetMesh,Three.js 演示
【问题讨论】: