逼近可编辑曲面的系统和方法技术方案

技术编号:2946419 阅读:173 留言:0更新日期:2012-04-11 18:40
公开了一种系统和方法,用于从3D数据集或3D点集自动地逼近可编辑曲面,该曲面可以以NURBS曲面的形式来描绘。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术主要涉及从3D数据集或3D点集自动地,该曲面可以以NURBS曲面的形式来描绘。
技术介绍
非均匀有理B样条(NURBS)是表示和设计几何图形的工业标准工具。如Markus Altmann在www.cs.wpi.edu/~matt/courses/cs563/talks/nurbs.html处所示,使用NURBS有多种理由。它们为标准分析形状(例如圆锥)和自由形态形状提供了一个共同的数学形式。NURBS提供了设计多种形状的灵活性,并且能够通过数字上稳定和精确的算法来较快地评估。它们在仿射变换和透视变换下不变,并且是无理B样条与无理和有理贝塞尔曲线和曲面的通式。然而,NURBS的一个缺点是需要额外的存储器来定义传统形状(例如圆)。这是由除了控制点之外的参数造成的,但这将允许以期望的灵活性来定义参数形状。NURBS形状不仅由控制点定义,而且还需要与每一个控制点相关的权重。例如,作为向量估值分段有理多项式函数的NURBS曲线C(u)可以定义为(1)---C(u)=sum(i=0,n){wi*Pi*Ni,k(u)}sum(i=0,n){wi*Ni,k(u)}]]>其中wi=权重Pi=控制点(向量)Ni,k=k次标准化B样条基函数 B样条递归地定义为(2)---Ni,k(u)u-titi+k-ti*Ni,k-1(u)+ti+k+1-uti+k+1-ti+1*Ni+1,k-1(u)]]>/1,如果ti<=u<ti+1Ni,0(u)=<\0,其它其中ti是形成节点向量的节点,并且U={t0,t1,…,tm}。节点向量节点向量唯一地确定了如上文等式(2)所示的B样条。节点的编号(m+1)、Ni,k的次数(k)和控制点的编号(n+1)之间的关系由m=n+k+1给定。假定节点向量U中的节点序列为非减的,即ti<=ti+1。每一个相继的节点对表示用于计算形状片断的参数值的区间[ti,ti+1)。对于NURBS,所有形状片断的相对参数区间(节点长度)不需要相同,即节点间距是非均匀的,导致了如下形式的非周期节点向量(3)U={a,…,a,tk+1,…,tm-k-1,b,…,b},其中a和b以重数(multiplicity)k+1而重复。节点的重数影响了该节点处的参数连续性。非周期B样条(例如NURBS)在节点长度内是无穷可微和连续可微的,并且在节点处是k-M-1次连续可微的,其中M是节点的重数。相反,周期节点向量U={0,1,…,n}在任何地方都是k-1次连续可微的。考虑NURBS的节点向量,重数k+1的末端节点(tk,tn+1)与末端控制点P0、P0重合。由于节点间距可以是非均匀的,每一个区间[ti,ti+1)的B样条不再相同,并且B样条的次数可以变化。考虑节点向量所表示的参数值的整个范围,不同的B样条在该参数值的范围上建立了如等式(2)所定义的连续(重叠)混成函数(blending function)Ni,k(u),在下文的表1中示出该函数。这些混成函数具有下面的性质1.对于所有的i,k,u,Ni,k(u)>=0;2.如果u不在[ti,ti+k+1)中,那么Ni,k(u)=0,这表示当Ni,k(u)非零时,有k+1个节点距离(knot span)的局部支持。3.如果u在[ti,ti+1)中,非零混成函数是Ni-k,k(u),…,Ni,k(u);4.Sum(j=i-k,i){Nj,k(u)}=sum(i=0,n){Ni,k(u)}=1,(单位分解(partition of unity));5.在多个节点的情况下,0/0被认为是零。如下文表2所示,第一和第四性质共同导致了凸包。控制点的折线建立由NURBS曲线所定义的形状。第二和第三性质说明了k+1个相继控制点定义了形状片断,并且控制点包括在k+1个相邻的形状片断中。因此,改变控制点或权重只对在等式(2)中给定的区间上定义的k+1个形状片断产生影响。 表1 表2 曲线/曲面定义可以使用有理基函数(4)---Ri,k(u)=wi*Nik(u)sum(j=0,n){wj*Nj,k(u)}]]>将等式(1)中对NURBS曲线的先前的定义改写为(5)C(u)=Sum(i=0,n){Pi*Ri,k(u)}可以以相似的方式来定义NURBS曲面S(u,v)=sum(i=0,n)sum(j=0,m)Pi,j*Ri,k,j,l(u,v)其中(6)---Ri,k,j,l(u,v)=wi,j*Ni,k(u)*Nj,l(v)sum(r=0,n){sum(s=0,m){wr,s*Nr,k(u)*Ns,l(u)}}]]>有理基函数具有与混成函数相同的性质。要强调的一点是它们在仿射和(甚至)透视变换下的不变性。因此,仅需对控制点进行变换以获得适当的NURBS形状变换。算法可以使用齐次坐标有效地对NURBS进行评估。下面的步骤说明了执行评估的一种方法1.使控制点增加一维(例如,P=(x,y)->P’(x,y,l)),并将控制点与其对应的权重相乘,即在2维中Pi(xi,yi)->Pi,(wi*xi,wi*yi,wi)2.在齐次坐标中计算NURBSC’(u)=sum(i=0,n){Pi’(u)*Ni,k(u)}3.使用下面的式子将“齐次”NURBS映射回原始坐标系/(X1/W,X2/W,…,Xn/W),如果W不等于零map(X1,X2,…,Xn,W)=<\(X1,X2,…,Xn),如果W等于零 (7)---C(u)=map(C′(u))=sum(i=0,n){wi*Pi*Ni,k(u)}sum(i=0,n){wi*Ni,k(u)}]]>对于中的u,在u处对曲线进行评估中仅存考虑的混成函数是Ni-k,k(u),…,Ni,k(u)。在C.deBoor,“A Practical Guide toSplines,”1978,New York,Springer-Verlag中描述了用于计算非零(non-vanishing)混成函数的有效算法。权重如上所述,改变控制点Pi的权重wi仅影响区间[ti,ti+k+1)(在曲线的情况)。下面的表3示出了权重的几何含义。定义点B=C(u;wi=0);N=C(u;wi=1);以及Bi=C(u;wi不等于{0,1}) 表3N和Bi也可以表示为N=(1-a)*B+a*PiBi=(1-b)*B+b*Pi其中a=Ri,k(u;wi=1)b=Ri,k(u)从a和b的表达式获得了下面的恒等式 (1-a)/a∶(1-b)/b=PiN/BN∶PiBi/BBi=wi上式被称作四个点Pi、B、N、Bi的交叉比(cross ratio/doubleratio)。根据这些表达式,可以导出形状修改的影响●Bi在直线段上扫过(sweep out);●如果wi=0,那么Pi对形状没有影响;●如果wi增加,那么对于j不等于i,b和曲线靠近Pi而远离Pj;●如果wi减小,那么对于j不等于i,b和曲线靠近Pj而远离Pi;以及●如果wi->无穷,如果u在中,那么b->1且Bi->Pi问题已尝试在不同的
中使用多种技术创建NURBS曲面。例如,国际公开号No.WO 本文档来自技高网
...

【技术保护点】
一种用于从3D数据集逼近可编辑曲面的方法,包括步骤:从3D数据集选择3D点集;确定3D点集的最佳拟合平面;将至少一部分3D点集投影到最佳拟合平面上;根据投影的3D点集来确定最佳拟合平面的边界;将栅格投 影到边界内的最佳拟合平面,该栅格包含多个栅格点;初始化栅格点;确定至少一部分栅格点的值;利用值来选择至少一部分栅格点;以及使用至少一部分选择的栅格点来描绘可编辑曲面。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:肖恩A斯派塞徐子韬
申请(专利权)人:哈利伯顿兰德马克绘图公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1