NURBS曲线曲面B样条的缺点•用于自由型曲线曲面的B样条曲线在表示和设计自由型曲线曲面形状方面显示了强大的威力。然而在表示与设计由二次曲面与平面构成的初等曲面时却遇到了麻烦。–B样条曲线(面)包括其特例Bézier曲线(面)都只能近似表示除抛物线面外的二次曲线弧(面)。•近似表示将带来处理上的麻烦,使本来简单的问题复杂化,还会带来原不存在的设计误差问题。•解决这一问题的途经显然应该是改造现有的B样条方法,–保留其描述自由型形状长处,–扩充其统一表示二次曲线弧与二次曲面的能力。•人们所寻求的方法就是有理B样条方法。–形状描述中更多地以非均匀类型出现,而均匀、准均匀和分段Bézier曲线(面)三种类型又可看作是非均匀类型的特例,因此,习惯称之为非均匀有理B样条曲线NURBS(Non-UniformRationalB-Splines)。☆NURBS曲线●有理样条曲线◘基函数性质●NURBS曲线表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较有理样条曲线定义•有理函数是两个多项式之比;有理样条是两个样条函数之比。–例如,有理B样条曲线可用向量描述为:P(u)=(∑ωkPkBk,d(u))/(∑ωkBk,d(u))。•Pk是n+1个控制点位置,•参数ωk是控制点的权因子。–ωk值越大,曲线越靠近该控制点Pk。–当所有权因子都为1时得标准B样条曲线。•构造有理B-样条表达式与构造非有理表达式的步骤相同:–给定控制点集、多项式次数、权因子、节点向量,–用递归关系可得混合函数。–通常,图形包用非均匀节点向量表示式来构造有理B样条。这些样条称作NURBS。☆NURBS曲线●有理样条曲线◘有理样条特点◘NURBS方法◘NURBS特点●NURBS曲线表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较有理/非有理样条比较•有理样条与非有理样条相比有两个重要的优点:–有理样条提供了二次曲线的精确表达式;–非有理样条表达式为多项式,仅能逼近二次曲线。•这使图形包能用一个表达式(有理样条)来模拟所有曲线形状,无需用一个曲线函数库去处理不同的形状。–有理样条对于透视观察变换是不变的。–非有理样条关于透视观察变换是可变的。•这意味着可对有理曲线上的控制点应用一个透视观察变换,来得到曲线的正确视图,☆NURBS曲线●有理样条曲线◘有理样条特点◘NURBS方法◘NURBS特点●NURBS曲线表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较NURBS方法•NURBS方法是建立在非有理Bézier方法和非有理B样条方法基础上的。•它提出的首要的理由是为了找到与描述自由型曲线曲面的B样条方法相统一的、又能精确表示二次曲线弧与二次曲面的数学方法。•鉴于NURBS在形状定义方面的强大功能与潜力,•美国国家标准局在1983年制订的初始图形交换IGES第二版就将NURBS列为优选类型。•1988年颁布的STEP/PDES产品定义交换规范只规定了NURBS为唯一的一种自由型参数曲线曲面。•1991年ISO正式颁布的STEP标准中NURBS是唯一的自由型参数曲线曲面表示方法。☆NURBS曲线●有理样条曲线◘有理样条特点◘NURBS方法◘NURBS特点●NURBS曲线表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较NURBS方法的优缺点•NURBS方法的优点表现在以下几个方面:•既为标准解析形状也为自由型曲线曲面的精确表示与设计提供了一个公共的数学形式。•由操纵控制顶点及权因子为各种形状设计提供了充分的灵活性。权因子的引入成为几何连续样条曲线曲面中形状参数的替代物。•NURBS计算稳定且速度快;NURBS有明显的几何解释。•NURBS有强有力的几何配套技术(包括插入节点/细分/消去、升阶、分裂等)。•NURBS在几何变换及平行和透视投影变换下不变。•NURBS是非有理B样条和Bézier形式合适的推广。•NURBS方法主要缺点包括:•需要额外的存储以定义传统的曲线曲面。•权因子的不合适应用可能导致很坏的参数化,甚至毁掉随后的曲面结构。•某些技术用传统形式比NURBS工作得好。如曲面求交。•某些基本算法存在数值不稳定问题。例如:点的反求。☆NURBS曲线●有理样条曲线◘有理样条特点◘NURBS方法◘NURBS特点●NURBS曲线表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较NURBS曲线三种等价表示•从表面上看,与非有理B样条曲线比较,NURBS不过是多了权因子与分母。•正因为多了权因子与分母,问题变得复杂。•NURBS曲线有三种表示方法:•分式表示是有理的由来,它说明:NURBS曲线是非有理与有理Bézier和非有理B样条曲线的推广;但却难以从中了解更多的性质。•在有理基函数表示形式中,可从有理基函数的性质清楚地了解NURBS曲线的性质。•齐次坐标表示形式说明:NURBS曲线是它的控制顶点的齐次坐标或带权控制点在高一维空间里所定义的非有理B样条曲线在ω=1超平面上的投影。•不仅包含了明确的几何意义,而且也说明:非有理B样条曲线的大多数算法都可以推广应用于NURBS曲线。☆NURBS曲线●有理样条曲线●NURBS曲线表示◘有理分式表示◘有理分式性质◘基函数表示◘基函数性质◘基函数性质◘齐次坐标表示◘齐次坐标表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较NURBS曲线有理分式表示•一条k次NURBS曲线可表示为一分段有理多项式矢函数:•这给出了NURBS的数学定义,也是有理的由来。•参数ωi是控制顶点权因子,分别与n+1个控制顶点Pi(i=0,1,2,…,n)相联系。•首末权因子ω0,ωn0,其余ωi≥0,以防止分母为零、保留凸包性质及曲线不致于权因子而退化为一点。•恰如非有理B样条曲线,控制顶点Pi(i=0,1,2,…,n)顺序连接成控制多边形。•Bi,k(u)是由节点向量U={u0,u1,u2,…,un+k+1)按递推公式决定的k次规范B样条基函数。nikiinikiiiuBuBPuP0,0,☆NURBS曲线●有理样条曲线●NURBS曲线表示◘有理分式表示◘有理分式性质◘基函数表示◘基函数性质◘基函数性质◘齐次坐标表示◘齐次坐标表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较NURBS有理分式表示性质•对于非周期NURBS曲线,常将两端节点的重复度取为k+1,即:u0=u1=u2,…,uk,un+1=un+2=…=un+k+1。•且在大多数实际应用里,端节点值分别取为0和1,因此,有曲线定义域:u∈[uk,un+1]=[0,1]。•特殊地,当n=k时,k次NURBS曲线就成为k次有理Bézier曲线。•k次NURBS曲线节点向量两端节点重复度取k+1,就使曲线具有同次有理Bézier曲线端点几何性质;•如果权因子ω1,ωn-1≠0,曲线首末端点分别就是控制多边形首末顶点,曲线在首末端点处分别与控制多边形首末边相切。☆NURBS曲线●有理样条曲线●NURBS曲线表示◘有理分式表示◘有理分式性质◘基函数表示◘基函数性质◘基函数性质◘齐次坐标表示◘齐次坐标表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较NURBS曲线有理基函数表示•NURBS曲线方程可写为如下等价形式:•Ri,k(u)称为k次有理基函数。它具有与k次规范B样条基函数Bi,k(u)类似的性质:•局部支撑性质:即u不在区间[ui,ui+k+1]内时,Ri,k(u)=0;•规范性:∑Ri,k(u)=1;•可微性:如果分母不为零,在节点区间内是无限次连续可微的,在节点处是k-r次可微的,r为该节点的重复度;•ωi是控制顶点权因子•若ωi=0,则:Ri,k(u)=0;若ωi→+∞,则:Ri,k(u)=1;•若ωj→+∞,j≠i,则:Ri,k(u)=0。•若所有权因子ωj=1,当节点向量U={0,0,…0,1,1,…,1}(0和1的重复度都为k+1)时,Ri,k(u)=BEZi,k(u);•其它情况下,Ri,k(u)=Bi,k(u)。nikiikiikinikiiuBuBuRuRPuP0,,,0,;☆NURBS曲线●有理样条曲线●NURBS曲线表示◘有理分式表示◘有理分式性质◘基函数表示◘基函数性质◘基函数性质◘齐次坐标表示◘齐次坐标表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较NURBS有理基函数表示的性质•非有理与有理Bézier曲线和非有理B样条曲线是NURBS的特例。•局部性质:•k次NURBS曲线上参数为u∈[ui,ui+1]的一点P(u)至多与k+1个控制顶点Pi及相联系的权因子ωj(j=i-k,i-k+1,…,i)有关,与其它顶点及权因子无关;•若移动k次NURBS曲线的一个控制顶点Pi或改变所联系的权因子将仅仅影响定义在区间[ui,ui+k+1]上那部分曲线的形状,对NURBS曲线的其它部分不发生影响。•变差减少性质:•平面内任一直线与B样条曲线的交点各数不多于该直线与曲线控制多边形的交点数目。☆NURBS曲线●有理样条曲线●NURBS曲线表示◘有理分式表示◘有理分式性质◘基函数表示◘基函数性质◘基函数性质◘齐次坐标表示◘齐次坐标表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较NURBS有理基函数表示的性质•强的凸包性质•定义在非零节点区间[ui,ui+k+1]上那一曲线段位于它的k+1个控制顶点Pj(j=i-k,i-k+1,…,i)的凸包内。•整条NURBS曲线位于所有定义各曲线段的控制顶点的凸包的并集内。•所有权因子大于零保证了凸包性质成立。•在仿射变换和透视变换下的不变性•在曲线定义域内有与有理基函数同样的可微性或参数连续性,即在节点处是k-r次可微的;•如果某个权因子ωi等于零,那么相应的那个控制顶点Pj对曲线根本没有影响。•若ωi=→+∞,则当u∈[ui,ui+k+1]时,P(u)=Pi;即:控制顶点在曲线上。☆NURBS曲线●有理样条曲线●NURBS曲线表示◘有理分式表示◘有理分式性质◘基函数表示◘基函数性质◘基函数性质◘齐次坐标表示◘齐次坐标表示●形状因子概念●NURBS曲线形状☆NURBS曲面●NURBS曲面表示●NURBS曲面性质●NURBS形状因子☆三次曲线比较•用带权控制点Di(i=0,1,…,n)定义一条三维的k次NURBS非有理B样条曲线:•将它投影到ω=1平面上,所得透视像即xy平面上一条k次NURBS曲线:NURBS曲线齐次坐标表示•对平面内给定控制顶点Pi=[xiyi](i=0,1,…,n)及相联系的权因子ωi(i=0,1,…,n),按下列步骤定义k次NURBS曲线:•确定所给控制顶点Pi(i=0,1,…,n)的带权控制点:Di=[ωiPiωi]=[ωixiωiyiωi](i=0,1,…,n)nikiiuBDup0,nikiinikiiiuBuBpuP0,0,ω=1XYD2D3D1D0P2P3P1P0XYω☆NURBS曲线●有理样条曲线●NURBS曲线表示◘有理分式表示◘有理分式性质◘基函数表示◘基函数性质◘基函数性质◘齐次坐标表示◘齐次坐标表示●形状因子概念●NURBS曲线形