下图显示了一个三角形表面网格。它的顶点正好在原始 3D 对象的表面上,但是直边和面当然在原始表面弯曲的地方有一些几何误差,我需要一些算法来估计平滑的原始表面。
详细信息:我有这个表面的(可投影部分)的高度场(2.5D 三角剖分,其中每个 x,y 对具有唯一的高度 z),我需要计算任意 x,y 对的高度 z。例如图像中光标指向的点的 z 值。
如果是 2D 问题,我会使用三次样条,但对于曲面,我不确定什么是最佳解决方案。
下图显示了一个三角形表面网格。它的顶点正好在原始 3D 对象的表面上,但是直边和面当然在原始表面弯曲的地方有一些几何误差,我需要一些算法来估计平滑的原始表面。
详细信息:我有这个表面的(可投影部分)的高度场(2.5D 三角剖分,其中每个 x,y 对具有唯一的高度 z),我需要计算任意 x,y 对的高度 z。例如图像中光标指向的点的 z 值。
如果是 2D 问题,我会使用三次样条,但对于曲面,我不确定什么是最佳解决方案。
正如@Darren 所评论的,您需要的是patch。
它可以是双线性补丁或双二次或 Coon 补丁或其他。
我没有发现太多的参考做快速搜索,但这个链接:
这个概念是您计算沿边的样条曲线(相对于直边段本身的高度函数),然后在由边分隔的表面内进行混合。负责混合的补丁 os 意味着在任何面内都有一个高度,该高度是面内点位置坐标和在同一面的边缘上定义的样条线段的值的函数。
据我所知,在四边形网格上使用这种方法很容易(因为很容易定义在哪些边序列上进行样条线),而如果你被迫进行实际的三角测量,我不确定如何应用.