一、概述
二、思路
1、Loop算法简述
2、更新策略
3、三角面细分操作
4、操作流程
三、数据结构
四、参考资料
一、概述
上课作业。基于半边数据结构实现了Loop曲面细分算法。
二、思路
1、Loop算法简述
Loop细分是一种三角网络的细分法则。算法本身挺简单的,主要就是把1个旧三角面片分成4个新三角面片,涉及到半边数据结构操作的部分有点麻烦。具体:每次细分,每条边上计算插入一个新顶点,同时每个原始顶点更新位置。边界边/点和非边界边/点按不同策略插入/更新坐标。
2、更新策略
每条边上新插入的点计算坐标后暂时存储在边结构的newPos变量中,每个旧顶点计算完更新后顶点位置后暂时存储在顶点结构的newPos变量中。
更新策略如下图所示,图上为非边界情况的更新策略,图下为边界情况的更新策略。