计算机图形学曲线和曲面.pptVIP

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机图形学曲线和曲面

B样条曲线的节点矢量对曲线形状是有影响的,它对节点矢量的基本要求是非递减。由等距节点构造的B样条曲线称为均匀B样条曲线。但节点可以是非均匀的,这包含两个含义:①节点区间的长度不等;②重节点,即节点区间的长度为零。 (注意:节点矢量的整体平移和整体比例变换对B样条曲线的形状是没有影响的。) 我们把顺序r个节点相重称为该节点具有重复度r或称该节点为r重节点,它具有以下性质: (1)在B样条曲线定义域内的内重节点,重复度每增加1,曲线段数减1,样条曲线在该重节点处的可微性或参数连续阶降1。因此,k次B样条曲线在重复度为r的节点处是Ck-r连续的。一条位置连续的曲线,其内节点所取的最大重复度等于曲线的次数k,端点的最大重复度为k+1。使用这一性质,可以在B样条曲线内部构造尖角(零次连续)。 (2)当端节点的重复度为k+1时,k次B样条曲线就具有k次Bezier曲线相同的端点几何性质。 (3)由节点矢量U=[0,…,0, 1,….,1](k+1个0,k+1个1)构造的B样条曲线就是Bezier曲线。 (4)内节点为均匀分布,端节点有重复度k+1的节点向量称为准均匀的。 5)重节点对B样条曲线的影响 6)B样条曲线举例 零次B样条:就是控制顶点点列本身。 一次B样条:在节点不重复的情况下,一次B样条曲线就是控制多边形自身。 二次B样条: 7)B样条曲线的生成 Ⅰ)生成第一段曲线: 从n+1个控制顶点中选取前k+1个控制点Pi(i=0,1,...,k);从节点矢量( 共n+k+2 个节点)中选取前2k+2个节点ti(i=0,1,...,k,...,2k+1) ;按定义可以构造一条B样条曲线: 其定义域为[tk,tk+1)。 (5.3) Ⅱ)生成第二段曲线: 从n+1个控制顶点中再选取k+1个控制点,其编号为Pi(i=1,...,k,k+1);从节点矢量中再选取2k+2个节点,其编号为ti(i=1,...,k,...,2k+1,2k+2) ;按定义又可以构造一条B样条曲线。 这段曲线的定义域是[tk+1,tk+2)。它与前一段曲线是首尾相接的,在连接点处有k-1次的连续导数,原因是它与第一段曲线有大量相同的控制点和节点。 7)B样条曲线的生成(续) Ⅲ)生成n-k+1段曲线 如此反复进行,每次k+1个控制点和2k+2个节点的编号向后移动一,并构造一段B样条曲线,直到用完所有的控制点和节点(不能向后移了),则一共生成光滑连接的n-k+1段曲线。它们的定义域依次相连但不重叠,并集为[tk,tn+1)。 Ⅳ)生成的n-k+1段连续曲线就是一条B样条曲线 由于支撑区间的存在,由所有n+1个控制点和n+k+2个节点按定义构造的,在定义域[tk,tn+1)上的B样条曲线,与上面分段构造的光滑连接的n-k+1段曲线是同一条曲线。 8)de Boor 曲线递推算法 给定控制顶点Pi(i=0,1,...,n)及节点矢量T=[t0,t1,...,tn+k+1]后,就定义了k次B样条曲线。欲计算B样条曲线上对应一点P(t),可以利用式(5.1)或(5.3)计算该点的坐标,但是采用de Boor 算法,计算更加快捷。 de Boor 算法的导出 即是说: (1)每次递推共有k-r+1个区间(即控制点),所有区间长度均为k-r+1(特别地,第一次递推共有k个区间,区间长度为k)。每次递推区间个数和长度减一,最后一次递推区间长度为1。 (2)第一区间的右端点为j+1,第二区间将第一区间右推一次,以后依次右推,直到最后区间的左端点为j。 (3)每个区间用来进行插值的两个数据点对应区间的左端点i和其左侧的一个点i-1。 举例:生成3次B样条(k=3), 这时第一段的定义域为[t3,t3+1), j=3; r=1时,共有三个区间,区间长度为3 r=2时,共有两个区间,区间长度为2 r=3时,共有一个区间,区间长度为1 ② de Boor 算法的几何意义 t0 t1 t2 t3 t4 t5 t6 t7 r=1 r=2 r=3 t P0 P1 P2 P3 P11 P12 P13 P33 P22 P23 三次B样条的实际递推过程,t0,t7用不上 说明: 两个端点节点用不上意为着它们可以任意选取,它们的意义在于数学公式的表达,而不在于曲线的形状。 由控制点计算B样条曲线时,端点节点t0和tn+k+1是用得上的;由控制线段计算B样条曲线时,这两个节点用不上。 9)反算B样条曲线的控制顶点 虽然控制顶点(和节点)决定B样条曲线的形状,但B样条曲线通常不透过控制顶点。使构造的B样条曲线通过指定的点,即反算插值曲线的B样条控制顶点,称为B样条曲线的逆过程或逆问

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档