B-样条曲线——动机 Motivation

B-样条曲线——动机

Motivation


 

上一页 回目录 下一页

    考虑设计一个花瓶的剖面图。下图左边是11次(degree)的贝塞尔曲线;但是它很难弯曲瓶颈到线段 P4P5。当然,我们可以在这个线段附近增加控制点来增加该区域的权重。但是这会增加曲线的次数(degree)。许多情况下,不值得使用如此高次(degree)的多项式。

 

     如前面讨论过的贝塞尔曲线的导数 ,我们可以将两个贝塞尔曲线连接起来。只要第一条曲线的最后一段和第二条曲线的第一段有相同方向,我们至少可以获得 G1 连续性,因为切向量有相同方向但可能有不同的长度(即,如果长度相同,它就是C1 连续的)。上边中间图使用了这个思想。它有3个3次贝塞尔曲线段,连接点用黄色矩形框标记。这说明有满足 G1 连续条件的多重低阶贝塞尔曲线段,我们可以设计出复杂形状。但是,保持 G1 连续条件会是乏味和不受欢迎的。

 

     有没有可能我们仍用更低阶曲线段而不用考虑 G1 连续条件? B-样条曲线是贝塞尔曲线的推广且正是为了解决这个问题的。上边右图是一个8控制点的3次B-样条曲线。实际上,由5条3次贝塞尔曲线段连接起来形成了由控制点定义的B-样条曲线。 上图中,那些小点把B-样条曲线划分为贝塞尔曲线段。可以像贝塞尔曲线那样移动控制点来修改曲线的形状。我们也可以修改曲线的细分(subdivision)。因此B-样条曲线有更高阶曲线设计的自由度。

    直接细分(Subdividing)曲线是很困难的。因此,我们细分曲线的定义域。因此,如果曲线的定义域是[0,1],这个闭区间被称为节点(knots)的点细分而成。设这些节点是 0 <= u0 <= u1 <= ... <= um <= 1。那么点C(ui)的曲线细分如下图所示,因此,修改[0,1]的细分会改变曲线的形状。

 

    总之,为了设计一个B-样条曲线,我们需要一系列的控制点,一系列的节点和一系列的系数,每个系数对应一个控制点,所以所有曲线段连接在一起满足某个连续条件。系数的计算可能是最复杂的步骤因为它们必须保证某个连续条件。幸运的是,这个计算在本课程中不需要。我们只需要知道相关特性用于B-样条曲线的推理就可以了。 

  


上一页 回目录 下一页定义


 

译注:

  1.  本文翻译是“B-样条曲线(B-spline Curves)教程”中的一部分,其余翻译部分见“B-样条曲线(B-spline Curves)教程目录”。
  2.  “B-样条曲线(B-spline Curves)教程”是翻译自C.-K. Shene博士的CS3621 Introduction to Computing with Geometry Notes的第6部分“B-spline Curves”。
  3. 本文原文地址:Motivation  。
  4. 本文首发“博士数学家园

 

 

  • 11
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Catmull-Rom样条曲线是一种数学插值曲线的方法,它常用于计算机图形学和计算机动画中。这种曲线的特点是平滑且自然,可以通过一组数据点来生成连续且曲线流畅的路径。 Catmull-Rom样条曲线的计算是基于组成曲线的数据点和一个参数t的插值公式。它通过使用当前点和其相邻两个点之间的信息来计算每个点处的曲线方向和形状。具体来说,对于给定的四个数据点P0、P1、P2和P3,曲线在P1和P2之间的t值范围内插值。这个t值是一个[0, 1]之间的参数,可以控制曲线形状。通过改变t值,我们可以调整曲线的曲率和张力,从而得到不同样式的曲线。 Catmull-Rom样条曲线具有一些优点。首先,它是C2连续的,也就是说曲线在连接点处的一阶和二阶导数都是连续的,这使得曲线更加平滑。其次,曲线通过所有给定的数据点,这使得它们在表示路径时具有较好的准确性。此外,如果我们需要在曲线某个位置添加一个新的控制点,只需更新相邻的两个数据点即可,而不会对整条曲线产生明显的影响。 Catmull-Rom样条曲线在计算机图形学和动画中有广泛的应用。它常被用于生成平滑的曲线路径,如自由摄像机移动路径、动态物体轨迹等。此外,它还可以用于生成平滑的形状、曲面等。总之,Catmull-Rom样条曲线是一种非常有用的数学工具,可以在许多计算机图形学和动画应用中发挥重要作用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值