我目前正在研究我的硕士论文,我得到:
- 用 (x, y, z) 形式给定的 n 个点为我绘制的 Delaunay 三角剖分。
我的任务是使用这个三角测量并在给定的 z 值处制作等高线。通过实施维基百科样条插值,我几乎成功地做到了这一点:https ://en.wikipedia.org/wiki/Spline_interpolation
我的问题是,在实现样条曲线时,我的轮廓线相互交叉,而线性图当然不会交叉。
如果您查看屏幕底部,您会看到两条等高线交叉,我没有足够的声望点来表明线性绘图没有。您还可以从点到点看到边缘太圆了。我尝试的是在任何一对点之间插入更多点以沿线制作更多结点,这可以进一步限制它们,但是为了获得不相交的线,样条看起来太像线性绘图,而不是令人满意的眼睛。
我想知道的不是实际的代码实现方式,而是指向方式、读数等的指针。(注意,我将从头开始制作,没有库)。
问题:如何制作一个更高次的多项式函数,它在其线性对应物之外不会弯曲太多。太多了,我的意思是给定的轮廓在 50 米处,它不会穿过 60 米处的轮廓。
非常感谢任何帮助。