1.对网格模型M选取一个基准顶点Vi,以最短路径dijkstra算法广度遍历,记录每个顶点到基准顶点Vi的路径。
2.对每一个顶点建立局部坐标系(e1, e2, n),n 为顶点共享三角面片的法线加权平均向量。
3.离散映射
a.顶点 r 和 p 为相邻顶点,顶点 r 在顶点 p 的坐标系下直接映射成为 Upr,此为 r 对于 p 的离散映射。
b.将顶点 r 的局部坐标系旋转到顶点 p 的局部坐标系平面,达到两坐标系在同一平面,法线平行(方向一样),然后忽略法线 n,只使用其余e1, e2 , 形成2D平面坐标系,旋转 r 的2D平面坐标系,
与 p 的2D平面坐标重合,记录此次旋转的角度 θpr 。顶点 q 到顶点 r 的离散映射与 步骤 a 相同,是为Urq.我们所不知道的是顶点 q 到顶点 p 的离散映射Upq,其求取方式为
, 以角度 θpr 旋转2D向量Urq,此为新的在顶点p的2D平面内的离散映射。以此类推,不断叠加。
参考文献:
Interactive Decal Compositing with Discrete Exponential Maps