计算机图形学--------充分理解B样条曲线

样条(spline)二字,从英文翻译过来的,让人费解。B样条的数学定义更是让人匪夷所思。看了好几本参考教材,还是把总结一下B样条这个概念。

一、解释什么是样条。

实际应用中,样条是一根富有弹性的细木条或塑料条。在应用CAD/CAM技术以前,航空、船舶和汽车制造业普遍采用手工绘制自由曲线。绘制员用压铁压住样条,使其通过所有给定的型值点,再适当地调整压铁,改变样条形态,直到符合设计要求。所以在绘图术语中,样条是通过一组指定点集而生成平滑曲线的柔性带。样条曲线(spline curve)原指用这种方式绘制的曲线。


从力学角度考虑,样条可看做一弹性细梁,压铁是作用在梁上的集中载荷。由此,设计样条曲线的过程可抽象为:求弹性细梁在外加集中载荷作用下产生的弯曲变形。


在数学上使用分段的三次多项式函数来描绘这种曲线,其中各曲线段的连接处有连续的一次和二次导数。


在计算机图形学中,样条曲线指由多项式曲线段连接而成的曲线,在每段的边界处满足特定的连续性条件。

二、B样条曲线优点;

在学习B样条的知识之前,一定要首先了解Bezier曲线在外形设计的应用中存在一些具体的不足之处。主要有一下三点:


1.确定了多边形的顶点数(m个),也就决定了所定义的Bezier曲线的阶次(m-1次),这样很不灵活。

2.当顶点数(m)较大时,曲线的阶次将比较高。此时,多边形对曲线形状的控制将明显减弱。

3.Bezier的调和函数的值,在开区间(0,1)内均不为0。因此,所定义的曲线在(0<t<1)的区间内的任何一点均要受到全部顶点的影响,即改变其中任一个顶点的位置,都将对整条曲线产生影响,因此对曲线进行局部修改是不可能的。

为了克服以上提到的在Bezier曲线中存在的问题,Gordon、Riesenfeld和Forrest等人拓展了Bezier曲线,用n次B样条基函数替换了伯恩斯坦基函数,构造了B样条曲线。B样条曲线除了保持Bezier曲线所具有的有点外,还增加了可以对曲线进行局部修改这一突出的优点。除此之外,它还具有对特征多边形更逼近以及多项式阶次较低等优点。因此,B样条曲线在外形设计中得到了更广泛的重视和应用。


三、Bezier和B样条曲线在控制方式上的联系。

和贝塞尔曲线被“拉向”它的内部控制点的方式差不多,B样条曲线也被“拉向”控制点。不同的是B样条曲线并不必须在第一个和最后一个控制点进行插值;相反,二次曲线在两个控制点的中点开始和结束,而三次曲线在首末两个控制点相邻的控制点附近开始和结束。当然也有办法定义B样条曲线,使之肯定通过首末控制点。而且B样条曲线被控制点的“拉动”更加明显。如下图所示


样条曲面(splinesurface)可以使用两组正交样条曲线进行描述。



参考书目:

计算机图形学实用技术(第3版)陈元琰 张睿哲

计算机图形学(第四版)蔡士杰

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值