Qslim简化流程
Qslim简化算法流程大体上可以概括为如下三个步骤:
- 模型的读取
- 模型顶点Quadrics值的采集
- 根据顶点Quadrics值进行排序与构造顶点对栈
- 从顶点对栈中移除顶点对
首先从模型的提取开始说起
模型的提取
Qslim程序中,模型以smf格式导入,提供了SMFReader类来处理smf文件。smf文件目前在谷歌与百度无法找到任何有用的信息,但是在github上有很多模型数据。我也不在这里赘述了。
smfreader类从smf文件中读取模型数据,包括顶点与三角面的索引。读取成功后,数据将会保存至MxStdModel类中。
MxStdModel类是论文作者自定义的数据格式,包含了多种自定义的方法与宏,其中最重要的数据是v_data与f_data,分别代表了定点数据与面索引数据。
此外,MxStdModel类还包括了其他几类方法成员,这些功能会在之后解释。
Quadric参数的计算
接上步骤,QSlim程序读取完数据并保存到MxStdModel类后,将会启动Slim类。Slim类分为两种:FSlim与ESlim,分别对应面简化与边简化。他们的差别也会在之后详细解释。