【发布时间】:2011-08-27 17:00:24
【问题描述】:
我有三角形集合来定义我的 3D 形状的网格表面, 我想修复每个三角形的法线以指向 outshape。
我正在尝试以下(伪):
1. 定义第一个三角形法线方向为右方向
2. 使用这样的 DFS 遍历网格:
3. 三角形 = 第一个三角形
4. foreach neigbour in triangle.getNeighbours
5. 如果邻居和三角形之间的角度大于 180,则执行 neighbor.flip()
6. 三角形 = 邻居
7. 如果邻居已经选择,则继续下一个邻居
8. 递归到 4.
但算法中的第 5 步不起作用,因为无法知道角度是否大于 180,因为我需要知道女巫方向(顺时针或逆时针)。
您能帮我理解如何修复算法吗?
【问题讨论】:
标签: algorithm graphics mesh depth-first-search normals