首页 > 深度评论 > >正文

焦点要闻:Games101-11 几何

来源:哔哩哔哩2023-02-25 00:08:43

显式几何内容放在了上一讲中


(资料图片)

本节内容

贝塞尔曲线

贝塞尔曲线用一系列的控制点去定义某个曲线,需要满足一些性质,比如曲线方向要朝着p0到p1方向走,再到p2,最后到p3,并且起止点必须为p0、p3

贝塞尔曲线运用德卡斯特里奥(de Casteljau)算法 生成二次贝塞尔曲线:

定义三个点 -> 根据任意的 t 插值出点 -> 不断重复 t在[0,1]间不断取值 -> 得到曲线

(二次贝塞尔曲线采用了递归的方式,并且需要尽量多的加入t值去得到曲线想要的点)

三个点的应用

四个点的应用

二次贝塞尔曲线动画

贝塞尔曲线的代数表示

在每两个之间找一个时间t,相当于每两个之间线性插值

把算法过程写成代数的形式(如图)

推广到n阶,不难发现这其实是一个符合二项分布的多项式

举例:三次贝塞尔曲线的代数表示

贝塞尔曲线的性质

1.对称性:第i项系数和倒数第i项系数相同

2.必过起点终点,起始切线方向为前两个点连接的方向,终止切线方向为结尾两个点连接的方向

3.在仿射变换下,只需要对顶点做仿射变换,就能得到这个贝塞尔曲线在仿射变换下的结果

4.凸包性质:贝塞尔曲线始终会在包含了所有控制点的最小凸多边形中, 而不是按照控制点的顺序围成的最小多边形

逐段贝塞尔曲线

控制点多了以后,贝塞尔曲线并不直观,很难控制,于是我们想到可以每次定义一段贝塞尔曲线,然后连起来

普遍习惯每四个控制点定义一段,并略去中间两点间的连线

但如何保证连起来的曲线是光滑的呢?

起点的两个切线导数相等(不仅方向一样,大小也一样)

--逐段贝塞尔曲线连续性(分为点连续和切线连续)

当然也会有更高的连续性要求比如c2等(c2不知道)

样条曲线--其他类型的曲线

样条:连续的曲线,由一系列控制点控制,满足一定的连续性,即可控的曲线

B样条曲线有关信息可以参考:

https://zhuanlan.zhihu.com/p/50626506

https://www.bilibili.com/video/BV13441127CH?p=13 胡事民老师的课

B样条曲线(别称基函数样条)需要比贝塞尔曲线更多的信息,并满足所有贝塞尔曲线的重要性质

标签: 样条曲线 仿射变换 切线方向

下一篇:
上一篇: