CAGD: 第六章 NURBS曲线 |
您所在的位置:网站首页 › cad绘制双曲线 › CAGD: 第六章 NURBS曲线 |
第六章 NURBS曲线
众所周知,工业产品的形状大致可分为两类或由这两类组成,一类仅由初等解析曲线曲面如二次曲线、二次曲面等组成。大多数机械零件属于这一类,可以用画法几何与机械制图完全表达清楚和传递所包含的全部形状信息。第二类是不能由初等解析曲线曲面组成,而是由以复杂方式自由地变化的曲线曲面组成—即 所谓的自由型曲线曲面。例如象飞机、汽车、船舶等的外形零件。显然,这后一类曲线曲面不能单纯用画法几何与机械制图完全表达清楚,而必须采用参数多项式样条曲线曲面方法。由于这两种类型的曲线曲面其数学上的表示完全不同,这就给CAD/CAM系统的开发与研制带来困难和麻烦。 一个商品化的CAD/CAM系统应能满足工业设计的各种需求,无论什么类型的曲线曲面都能精确表示。由于参数多项式样条曲线曲面无法精确表示除抛物线外的初等解析曲线曲面,只能近似地逼近,因此若采用参数多项式曲线曲面作为几何造型的工具,则使得外形的设计"精度"大大降低。因为对CAD/CAM而言,除了计算机数值表示引起的误差外,形状的表示应当是精确的。而采用参数多项式样条曲线曲面和初等解析曲线曲面的混合模型,由于这两类方法数学表示上的不统一,则给编程带来了麻烦。进而,采用混合模型的CAD/CAM系统会随着所处理几何元素的增加,其所需的时间与空间幂次增加。对于采用单一模型的CAD/CAM系统,这种计算量的增加只是线性的。因此,为了建立一种既能包含参数多项式样条曲线曲面,又能精确表示初等解析曲线曲面的单一几何模型,人们提出了新的曲线曲面表示与设计方法,这就是NURBS曲线曲面。 最早尝试在几何形状设计中使用NURBS曲线曲面方法的是Boeing公司的Rowin'64和MIT的Coons'67,就其应用而言,他们的主要兴趣是把二次曲线和参数三次多项式曲线统一到参数有理三次曲线之中,以解决前两种曲线因算式不统一而引起的编程麻烦。而真正面向CAD/CAM实际应用的研究则始于美国SDRC(Structure Dynamics Research Corporation)的Till'83,他是第一位采用NURBS曲线曲面方法解决曲线曲面的表示和设计问题的,并将其用于该公司的GEOMOD系统和I-DEAS系统之中。 鉴于NURBS技术在形状定义方面的强大功能和潜力,不等该技术完全成熟,美国国家标准局在1983年制订的初始图形交换规范IGES(Initial Graphics Exchange Specification)第二版中就将NUTBS列为优化类型。1988年颁布的产品定义交换规范STEP/PDES(1.0版)只规定了惟一的一种自由型参数曲线曲面,即NURBS。1991年国际标准化委员会正式颁布了工业产品数据交换于表达的国际标准STEP。在STEP中,NURBS作为定义工业产品几何形状的惟一数学方法。 6.1 参数有理曲线 6.1.1 参数有理曲线的定义参数有理多项式曲线曲面方法是参数多项式曲线曲面的直接推广。从数学角度看,它的定义以齐次坐标为基础,即用 齐次坐标
对于点
的四元有序组。如果 显然,要使式(6.1.1)有意义,必有 式(6.1.1)的本质是一个
因此, 基于这一讨论,我们便可用 定义6.1
在射影空间 其中 定义6.2
在射影空间
并给定一节点矢量
其中 参数有理多项式曲线除了具有参数多项式曲线的全部性质之外,还具有以下重要的性质: 当![]() 权因子
交比是射影不变量。由射影几何,共线四点
它等于点
这称之为交比定理。
因为
所以
可见,共线四点 下面我们证明权因子确实为交比。令
那么,由式(6.1.3)可知
所以
同理
于是
由此可以看出,权因子 弄清了权因子 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 二次曲线又称为圆锥截线,为平面曲线,其一般方程为
它含有六个系数,但只有五个是独立的。也就是说,一条二次曲线由五个独立的条件确定,然而这些系数的几何意义不明确。对实际工程应用来说,直接采用这种隐式方程显然是不方便的。因此,需要寻求有明显几何意义的、适合工程应用的条件和表示形式。 既然二次曲线的隐式方程中含有五个独立的自由量,那么最简单的条件是给定平面上五个独立的点来确定一条二次曲线。由于任意给定的五个点不一定能确定一条二次曲线(比如五点共线),因而通常用直线族首先定义一二次曲线族,然后再指定一点以确定惟一的一条二次曲线。 给定直线:
那么这四条直线便定义了一二次曲线族:
表示一族过 如果点 给定平面上不共线的三个点
现以
直线
这里 设
可看作是点 由方程
其中, 交点
所以
同理
因此
这表明,对任一二次曲线, 此时,点
再由的表达式,便有
现令
代入上式,便有
这便是一有理二次Bézier曲线,且
上述讨论表明,任一二次曲线都可以表示成有理二次Bézier曲线。反之,有理二次Bézier曲线又是什么呢? 设
是一理二次Bézier曲线,那么按照重心坐标形式可将
由中心坐标的定义,有
另一方面,由
消去参数
这表明, 给定有理二次Bézier曲线之后,既然它就是圆锥曲线,那么我们要问当权因子满足什么条件时,给定的有理二次Bézier曲线分别是抛物线、双曲线和椭圆,这就是有理二次Bézier曲线的形状分类。 在回答这个问题之前,我们先讨论圆锥曲线的补弧。设
为一圆锥曲线,其中
也是一条由相同控制顶点定义的二次曲线。由于
因此,有理二次Bézier曲线
特别,当 圆弧是非常特殊的圆锥曲线,也是工程设计中最常用的曲线之一,如曲线间的圆角过渡、倒圆角等都用到圆弧。所以,有必要对圆弧的NURBS表示问题作以专门讨论。 给定有理二次Bézier曲线
由于 一条有理二次Bézier曲线为圆弧的充要条件是
其中
基于圆的有理二次Bézier表示条件,便可给出各种圆弧的NURBS表示。
![]()
取 ![]()
取 ![]() 令
所以,半圆的齐次表示是:
相应的非齐次表示如下:
当然,可以通过插入节点的方式消去无限远点
其中, ![]() 对于这种情况,若用一段有理二次Bézier曲线段表示之,那么由条件 由于整圆的圆心角为
10 四段构成的圆 此时的控制顶点及权因子如图6.5所示。二次B样条基函数
曲线的表示式为:
20 三段构成的圆 此时的控制顶点及权因子如图6.6所示。二次B样条基函数
曲线的表示式为:
当然,另外一种表示整圆的方法是采用补弧。设
为一圆弧,那么曲线
则为整圆除 我们早已知道,同一条参数曲线的表示式不惟一,可以通过正则参数变换 那么,对有理Bézier曲线应进行怎样的参数变换以改变曲线的参数化,同时又保持曲线的次数及定义域不变呢?这种参数变换对权因子产生怎样的影响呢?下面就这些问题进行讨论。 有理线性变换由于四共线点的交比在射影变换下不变,通过交比可在两条直线间建立起射影变换关系,它刊物用有理分式表示。因而,有理线性变换可用于有理Bézier曲线的重新参数化。 令
其中 对于给定的有理
做上述参数变换,对其重新参数化后,有
这等价于给出了一组特殊的新权因子:
由
与曲线 既然对有理Bézier曲线进行参数变换等价于重新选择权因子,那么我们要问:有理Bézier曲线中独立的权因子的个数有多少? 有理![]() 若令
此时,新权因子满足条件:
特别, 对曲线
由此可见,对任意给定的 为了区分起见,我们称首末权因子为1的有理
为标准型有理 有理线性变换表明,所有非标准型有理 根据前面的讨论可知,有理二次Bézier曲线就是初等二次曲线。一条初等二次曲线由五个独立的条件所确定,通常确定一条二次曲线的方法是基于Pascal定理。 【Pascal定理】给定圆锥曲线上六个互不相同且任意三个均不共线的点,如图6.7 所示,构造六条直线,则交点
给定五个互不相同且任意三个均不共线的点 下面我们以有理二次Bézier曲线的标准型为例,讨论有理二次Bézier曲线的确定问题。 给定曲线上三点![]() ![]() 设
方法1:求点
那么,由上式可知
消去参数
方法2:过
由所求参数
![]() ![]() 设
设另一条切线与
下面,我们作为本章的结束,考察一个例子。给定不共线的三个控制顶点 ① 这两组权因子定义同一条二次曲线; ② 求曲线从权因子 证明 设
我们只需确定出参数 由于
所以点
代入参数变换公式,有 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |