De Casteljau的算法说伯恩斯坦的多项式不能说什么,反之亦然?
如果我们知道伯恩斯坦多项式,为什么我们需要De Casteljau算法?
它们是不同还是相同?
答案 0 :(得分:8)
简答:一个是解析表达式,另一个是几何算法。所以你可能意味着“使用De Casteljau的算法绘制贝塞尔曲线与仅计算伯恩斯坦多项式之间有什么区别?”。
简短回答:在完美的电脑上,没有区别。它们是达到相同结果的两种看似不同的方式。您可以在需要它们的上下文中使用哪个更容易使用。
答案很长:你可以算出数学并看到Berstein多项式可以表示为嵌套的线性插值序列。该表达式及其几何解释称为De Casteljau算法。在大多数硬件上,评估给定t
的速度是相同的。虽然两种方法都带有舍入误差(因为IEEE浮点数),但求解多项式会在舍入中产生不同的错误,而不是求解几何表达式。但是,两者都没有比另一个更糟糕。
所以,回答“如果我们知道伯恩斯坦多项式,我们为什么需要De Casteljau的算法?”:没有“我们”。在个案评估中只有“你”。检查哪个最准确,最快,然后根据具体用例使用它。
当然,有时会产生很大的不同。例如,不能期望CnC机器评估三阶或更高阶多项式,但它可以简单地执行一系列线性插值。所以...再次,背景。你打电话,没有其他人。
当然,就解释贝塞尔曲线而言,存在巨大差异。几何解释是非常简单的,而分析解释需要了解高中微积分。但是,你可以从几何实例中找到很多洞察力,而分析表达式让我们发现了一大堆属性。再次,上下文。
答案 1 :(得分:1)
De Casteljau算法的结果与使用Bernstein多项式相同。但由于方法不同,他们可以更容易或更难分析结果。
同样,De Casteljau的算法显然在数值上稍微稳定https://en.wikipedia.org/wiki/De_Casteljau%27s_algorithm
算法的几何解释有助于学习概念而无需引入大量符号。
答案 2 :(得分:0)
他们对同一问题有不同的解决方法,De Casteljau是一种外行人的方法,你甚至可以用尺子和铅笔绘制Bézier曲线,它不是一个数学函数(作为副作用,你无法分析它)
看看有关动画的Bézier曲线的优秀教程(和De Casteljau解释):http://pomax.github.io/bezierinfo/