因此根据以上步骤我们可以得到Ti并将其代回求解新顶点vi并迭代, 但是在有些情况下简单求解出来的Ti并不适用. 一种可能就是顶点发生的旋转角度过大, 另一种可能就是目标实际缩放是各向异性的缩放....对于这两个特殊情况, 解决方法很类似:
旋转角度过大的情况, 在实际进行旋转矩阵计算前先使用作者另一篇文章Differential coordinates for interactive mesh...editing的方法对表面提前进行旋转, 这样就可以将大角度的旋转提前转为小角度的旋转
各向异性缩放的情况, 在实际应用前先估算出大致的缩放比率然后对原顶点提前进行缩放从而归一化矩阵所需的缩放尺度...而我们计算旋转矩阵的方法是首先对齐两个对应顶点处的法线, 然后选择两个顶点所连接着的一个对应邻接点, 用邻接点的边投影到顶点的切平面上, 以此作为另一个向量对齐旋转, 这样就对齐了顶点平面的坐标系....而一直说到了两个表面的对应顶点, 在实际使用中由于我们要迁移的表面的拓扑结构各不相同, 我们必须对表面进行处理并一一查找两个表面之间的对应关系.