【Literature Notes】三角网格曲面的参数化

  • 1.三角网格曲面参数化简介
  • 2.边界点的映射
  • 3.内部点的映射
  • 4.算法结果验证
  • 参考文献



1.三角网格曲面参数化简介

三角网格参数化就是对于给定的一个三角网格曲面和一个参数域,寻求一个从参数域上的点到三角网格上点的一一对应映射,在保持参数域上的拓扑信息与原始网格相同的同时谋求某种几何度量的变形最小化三角自适应网格 python_几何学。因此需要做的工作一方面是寻找理论上的映射方法,另一方面是建立变形度量的方法以寻找最优映射。
三角网格参数化方法有以下几种分类:

  1. 根据参数域的不同可以分为平面参数化和球面参数化等;
  2. 根据网格的拓扑信息可以分为带边界网格参数化和封闭网格参数化,甚至是任意拓扑的三角网格参数化;
  3. 考察不同的内在几何变量的变形,可以分为保面积参数化、保角参数化和等距参数化等;
  4. 根据求解方式的不同可以分为线性方法和非线性方法;
  5. 根据最后得到的参数化结果,可以分为局部参数化和整体参数化方法等三角自适应网格 python_参数化_02

网格曲面参数化的两大处理思路可以简单分为固定边界法活动边界法三角自适应网格 python_拓扑学_03
典型的网格参数化算法有:

  1. Floater保形参数化方法
  2. Harmonic参数化方法
  3. Intrinsic参数化方法

下文中将对Harmonic参数化方法(调和映射)进行展开。该方法将三角网格模型中的每一条边都看作为一个弹簧,先将三角网格的边界映射到预先定义好的多边形上,然后通过最小化整个三角网格模型的弹性势能来参数化内部空间点三角自适应网格 python_几何学。调和映射属于固定边界参数化,相较于活动边界法(Free Boundary),其计算效率更高,但参数化效果不若后者。

先尝试采用固定边界法(单位正方形域或者圆域),固定边界法(Fixed Boundary):顾名思义,使用固定边界法对网格进行参数化的时候,首先将网格的边界顶点的参数值固定在一个凸多边形上(比如矩形或圆形),然后列出最小变形能量方程,对内部顶点的参数值进行求解。

2.边界点的映射

网格的边界点的参数值需要固定带参数域中预先定义好的多边形上,这个平面参数域多边形可取单位正方形域和单位圆域(为了便于生成网格曲面的等参数线刀轨)。
Step1:设网格曲面三角自适应网格 python_参数化_05总共有三角自适应网格 python_几何学_06个顶点,其中有三角自适应网格 python_几何学_07个边界顶点三角自适应网格 python_三角自适应网格 python_08 ,找出网格的边界顶点。网格曲面边界顶点三角自适应网格 python_拓扑学_09 的弦长参数化为:
三角自适应网格 python_参数化_10
Step2:将顶点的弦长参数化结果按比例映射到参数域中。
单位正方形域,边界顶点的参数化结果为:
三角自适应网格 python_几何学_11
单位圆域,则边界起始点和边界点三角自适应网格 python_拓扑学_09之间的圆弧所对应的圆心角为三角自适应网格 python_三角自适应网格 python_13 ,则边界顶点参数化的结果为:
三角自适应网格 python_算法_14

3.内部点的映射

在调和映射的假设前提下,可以列出映射的变形能为(类似弹性势能):
三角自适应网格 python_参数化_15
三角自适应网格 python_三角自适应网格 python_16为弹性系数,E为三角网格的边集。
其中三角自适应网格 python_拓扑学_17分别为边三角自适应网格 python_几何学_18的两个顶点映射到参数域中的位置,边界点的位置已经确定。
三角自适应网格 python_算法_19
其中: 三角自适应网格 python_算法_20 为边 三角自适应网格 python_三角自适应网格 python_21 的两个相邻面的另外两个顶点, 三角自适应网格 python_算法_22 表示边 三角自适应网格 python_三角自适应网格 python_21 的 长度, 三角自适应网格 python_算法_24 表示三角片 三角自适应网格 python_拓扑学_25 的面积。
采用拉格朗日乘子法解式(4)使得三角自适应网格 python_拓扑学_26最小,得到网格曲面中所有顶点映射到参数域中后的坐标位置。
以边界点为已知条件,内部点为未知量,将上式对未知量求导可得
三角自适应网格 python_算法_27
三角自适应网格 python_算法_28三角自适应网格 python_拓扑学_09相邻顶点,上式需要求解大型稀疏矩阵,运用超松弛迭代法可求出三角自适应网格 python_参数化_30,从而将网格的内部顶点全部映射到平面多边形的内部三角自适应网格 python_拓扑学_31

4.算法结果验证

网格模型:

三角自适应网格 python_几何学_32


单位正方形域参数映射:

三角自适应网格 python_几何学_33


单位圆域参数映射:

三角自适应网格 python_参数化_34

在求解式(6)中的大型稀疏矩阵时,为了矩阵建立方便,实际算法实践中采用如下等价化简进行求解三角自适应网格 python_参数化_02

三角自适应网格 python_拓扑学_36

参考文献

[1] 晏冬梅. 三角网格曲面参数化技术研究[D].南京航空航天大学,2005.
[2] 陈晓兵. 口腔修复体高效数控加工编程技术研究与实现[D].南京航空航天大学,2011.
[3] Sun Yuwen et al. Iso-parametric tool path generation from triangular meshes for free-form surface machining[J]. The International Journal of Advanced Manufacturing Technology, 2006, 28(7-8) : 721-726.