11、计算机图形学——几何(贝塞尔曲线与曲面)

一、贝塞尔曲线

1.1、简介

下图中蓝色的线就是贝塞尔曲线,每条贝塞尔曲线都有控制点(下图中有四个),贝塞尔曲线必须经过第1个和最后一个控制点,并且需要和第起止控制点相切

11、计算机图形学——几何(贝塞尔曲线与曲面)_第1张图片

1.2、如何得到贝塞尔曲线

首先找到三个控制点

11、计算机图形学——几何(贝塞尔曲线与曲面)_第2张图片

然后取线段b0b1上的一个点,获取的方法依然是线性插值

11、计算机图形学——几何(贝塞尔曲线与曲面)_第3张图片

然后取线段b1b2上的一个点,获取的方法也是线性插值

11、计算机图形学——几何(贝塞尔曲线与曲面)_第4张图片

得到两个线性插值的点后,连接着两个点,并在这两个点组成的线段上再次进行线性插值取点

11、计算机图形学——几何(贝塞尔曲线与曲面)_第5张图片

将上图中线性插值出来的所有点B02都连接起来就是一条贝塞尔曲线了

11、计算机图形学——几何(贝塞尔曲线与曲面)_第6张图片

四个控制点或者五个控制点都是同理

11、计算机图形学——几何(贝塞尔曲线与曲面)_第7张图片

贝塞尔曲线线性插值的动画如下

11、计算机图形学——几何(贝塞尔曲线与曲面)_第8张图片

 

如果最终得到的线性插值的点都用控制点来表示,那么,拥有三个控制点的贝塞尔曲线可以表示成如下形式

11、计算机图形学——几何(贝塞尔曲线与曲面)_第9张图片

拥有四个控制点的贝塞尔曲线的行使如下

通过对系数的观察可知,n次贝塞尔曲线的参数是(t + (1-t))的n-1次方的展开

二、贝塞尔曲线的性质

1、必定经过起止控制点且与起终线段相切

2、具有仿射变换性质,可以通过移动控制点移动整条曲线,就是说将贝塞尔曲线的控制点经过仿射变换后,将变换后的控制点连起来之后,依然是个相同的贝塞尔曲线

3、贝塞尔曲线一定不会超出所有控制点构成的多边形,如下图所示,所有的贝塞尔曲线,一定在凸包里面(蓝色线里面)。

11、计算机图形学——几何(贝塞尔曲线与曲面)_第10张图片

三、贝塞尔曲线的改进

当传统贝塞尔曲线的控制点增多时,贝塞尔曲线的形状变得难以控制

11、计算机图形学——几何(贝塞尔曲线与曲面)_第11张图片

所以,就有人提出了分段处理的方法,当控制点很多时,将控制点分组,每组控制点分别绘制贝塞尔曲线,然后将这些贝塞尔曲线连接在一起,形成一个新的贝塞尔曲线

这种分段的方法可以更好的控制贝塞尔曲线的局部。但是容易产生尖点(也就是不可导点),所以,为了使贝塞尔曲线更加光滑,连接控制点处必须可导

11、计算机图形学——几何(贝塞尔曲线与曲面)_第12张图片

四、贝塞尔曲面

贝塞尔曲面的绘制也是基于贝塞尔曲线,只不过新加了一个高度信息

11、计算机图形学——几何(贝塞尔曲线与曲面)_第13张图片

以16个控制点为例,首先找到空间中16个控制点,每四个一组,就能得到在空间中横向四个灰色的贝塞尔曲线,之后,再进行纵向遍历,每个贝塞尔曲线上都取一个点,纵向绘制贝塞尔曲线,就能得到一个贝塞尔去面,示意动图如下

参考

GAMES101-现代计算机图形学入门-闫令琪_哔哩哔哩_bilibili 

Bezier Curve Edit (hws.edu)

欢迎大家评论交流,作者水平有限,如有错误,欢迎指出

你可能感兴趣的:(计算机图形学原理,图形学)