离散点拟合曲线BezierB样条

上传人:枫** 文档编号:578456726 上传时间:2024-08-24 格式:PPT 页数:64 大小:1.07MB
返回 下载 相关 举报
离散点拟合曲线BezierB样条_第1页
第1页 / 共64页
离散点拟合曲线BezierB样条_第2页
第2页 / 共64页
离散点拟合曲线BezierB样条_第3页
第3页 / 共64页
离散点拟合曲线BezierB样条_第4页
第4页 / 共64页
离散点拟合曲线BezierB样条_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《离散点拟合曲线BezierB样条》由会员分享,可在线阅读,更多相关《离散点拟合曲线BezierB样条(64页珍藏版)》请在金锄头文库上搜索。

1、第三章第三章 离散点绘制平面曲线离散点绘制平面曲线1 概述概述2 (Bezier)曲曲线3 B样条曲条曲线4 抛物抛物线调配曲配曲线5 三次参数三次参数样条曲条曲线 本章小本章小结一、一、规则曲曲线与不与不规则曲曲线 平面曲线一般分平面曲线一般分规则规则和和不规则不规则曲线两类。曲线两类。 规则曲线规则曲线是指可以用一个方程是指可以用一个方程或描述的曲线,即描述的曲线,即曲线的方程已知曲线的方程已知。 这类曲线的绘制方法:以足够小的步长取曲线上足够这类曲线的绘制方法:以足够小的步长取曲线上足够多的点,然后利用曲线方程求出这些点的坐标,最后用直多的点,然后利用曲线方程求出这些点的坐标,最后用直线

2、连接相邻的点即可绘出曲线。线连接相邻的点即可绘出曲线。 曲线的绘制精度取决于曲线上取点的密度,密度越大,曲线的绘制精度取决于曲线上取点的密度,密度越大,精度就越高,曲线就越光滑。精度就越高,曲线就越光滑。1 1 概述概述不规则曲线不规则曲线(拟合曲线拟合曲线):指已):指已知平面一些离散点的坐标,但知平面一些离散点的坐标,但曲线方曲线方程未知程未知,需要人为设计曲线方程对这,需要人为设计曲线方程对这些点进行拟合形成的曲线。些点进行拟合形成的曲线。 对于这类曲线的绘制,首先要对于这类曲线的绘制,首先要找出一种合理的拟合方找出一种合理的拟合方法法来设计曲线方程。来设计曲线方程。 拟合方法包括:贝塞

3、尔曲线法、拟合方法包括:贝塞尔曲线法、B样条曲线法、抛物线样条曲线法、抛物线调配曲线法、三次参数样条曲线法,最小二乘法等。调配曲线法、三次参数样条曲线法,最小二乘法等。 拟合方法不同拟合方法不同 曲线拟合方程不同曲线拟合方程不同 绘制的曲线形绘制的曲线形状也不同。状也不同。 但是,一旦拟合方法确定并得到相应的曲线拟合方程,但是,一旦拟合方法确定并得到相应的曲线拟合方程,不规则曲线也就变成了规则曲线。不规则曲线也就变成了规则曲线。 本章的内容就是介绍:本章的内容就是介绍:如何根据离散点的坐标,利用如何根据离散点的坐标,利用拟合方法建立曲线拟合方程,绘制不规则曲线拟合方法建立曲线拟合方程,绘制不规

4、则曲线。 1 概述概述 在用拟合方法建立曲线拟合方程时,通常把不规则曲在用拟合方法建立曲线拟合方程时,通常把不规则曲线分为两类:线分为两类: 1. “点点通过点点通过”式式 当已知离散点的位置较精确时,当已知离散点的位置较精确时,拟合的曲线通过所有的已知点拟合的曲线通过所有的已知点。 曲线方程确定后曲线方程确定后 规则曲线规则曲线 以足够小的步长获取以足够小的步长获取相邻离散点之间若干个数据点(插值点)的坐标,并用直相邻离散点之间若干个数据点(插值点)的坐标,并用直线连接它们线连接它们。 当步长极小时,所绘出的直线连线在视觉上便是一条当步长极小时,所绘出的直线连线在视觉上便是一条光滑的曲线。光

5、滑的曲线。 求相邻离散点之间若干数据点的问题称为求相邻离散点之间若干数据点的问题称为插值问题插值问题。二、不规则曲线(拟合曲线)的分类二、不规则曲线(拟合曲线)的分类1 概述概述 2. “平均通过平均通过”式式 当已知数据点有一定误差时,当已知数据点有一定误差时,所所拟合的曲线不通过所有已知点拟合的曲线不通过所有已知点,曲线,曲线代表的是这些数据点的代表的是这些数据点的变化趋势变化趋势。1000-2000-3000-4000- 10 20 30 402.0 2.2 2.4深深度度/m总孔隙度总孔隙度(%)密度密度 要求要求:设计的曲线方程与:设计的曲线方程与所有已知点的所有已知点的“距离距离”

6、总和最总和最小。小。 即:曲线方程是对所有已即:曲线方程是对所有已知点的知点的“逼近逼近”。 典型例子:地层孔隙度典型例子:地层孔隙度深度变化曲线。深度变化曲线。 “点点通过点点通过”式也称为插式也称为插值曲线,值曲线,“平均通过平均通过”式也称式也称为逼近曲线。为逼近曲线。1 概述概述 一般可分为一般可分为直角坐标方程直角坐标方程和和参数方程参数方程两类。两类。 例如:对于圆心坐标为例如:对于圆心坐标为(x0 , y0),半径为,半径为 r 的圆,的圆, 其直角坐标方程为:其直角坐标方程为: (x - x0)2 + (y - y0)2 = r2 参数方程为:参数方程为: 在计算机绘图时,使用

7、参数方程要比直角坐标方程方在计算机绘图时,使用参数方程要比直角坐标方程方便。便。 参数方程还有另外一种形式。参数方程还有另外一种形式。 三、曲线的方程分类三、曲线的方程分类 x = x0 + r cos(t) y = y0 + r sin(t) (0t2)1 概述概述 例如:对于二次抛物线曲线,其参数方程可表示为例如:对于二次抛物线曲线,其参数方程可表示为 设设上述参数方程可写为:上述参数方程可写为: 方程方程称为曲线的称为曲线的参数矢量方程参数矢量方程。 在构建曲线方程时,通常采用方程在构建曲线方程时,通常采用方程的矢量形式;在的矢量形式;在绘制曲线时,通常采用方程绘制曲线时,通常采用方程的

8、分量形式。的分量形式。1 概述概述 当平面上已知数据点较多时,针对所有点拟合曲线方当平面上已知数据点较多时,针对所有点拟合曲线方程有时非常困难,或者得到的曲线方程非常复杂、不实用。程有时非常困难,或者得到的曲线方程非常复杂、不实用。 可分别针对部分点进行可分别针对部分点进行分段拟合分段拟合,分段拟合得到的曲,分段拟合得到的曲线段会涉及到线段会涉及到曲线段的连接问题曲线段的连接问题。 例如:若已知例如:若已知3个平面离散点,用个平面离散点,用1条抛物线段对其拟条抛物线段对其拟合;若有合;若有5个点,可用个点,可用2条抛物线段进行分段拟合。条抛物线段进行分段拟合。 两条曲线段在连接点两条曲线段在连

9、接点P3处,并非光滑,需对该点进行处,并非光滑,需对该点进行光滑处理。在光滑处理时,达到什么标准为光滑处理。在光滑处理时,达到什么标准为“光滑光滑”呢?呢? 给出给出2个一般标准:个一般标准: 四、曲线段的光滑连接四、曲线段的光滑连接1 概述概述 1. C 1连续连续 在连接点在连接点 pj 处,若两曲线段的切线斜率相等(相同的处,若两曲线段的切线斜率相等(相同的切线),或者说一阶导数连续,即切线),或者说一阶导数连续,即称两曲线段在连接点称两曲线段在连接点 pj 处的光滑连接达到处的光滑连接达到C 1连续。连续。 2. C 2连续连续 在连接点在连接点 pj 处,不仅两曲线段的切线斜率相同,

10、而处,不仅两曲线段的切线斜率相同,而且切线斜率的变化率也相同,即且切线斜率的变化率也相同,即称两曲线段在连接点称两曲线段在连接点 pj 处的光滑连接达到处的光滑连接达到C 2连续。连续。 显然显然C 2连续比连续比C 1连续要求更高,曲线的连接更光滑。连续要求更高,曲线的连接更光滑。 另外还有更高的连续标准,但对一般绘图,曲线段的另外还有更高的连续标准,但对一般绘图,曲线段的连接满足连接满足C 1或或C 2连续,其光滑已足够。连续,其光滑已足够。pj及及 可以设计一个光滑的曲线段去逼近这个特征多边形。可以设计一个光滑的曲线段去逼近这个特征多边形。 贝塞尔曲线贝塞尔曲线就属于这类曲线。就属于这类

11、曲线。 该曲线由法国汽车工程师该曲线由法国汽车工程师Bezier首先提出,最初用于首先提出,最初用于汽车零件外形的设计。目前广泛应用于与计算机绘图相关汽车零件外形的设计。目前广泛应用于与计算机绘图相关的各个领域。的各个领域。2 2 贝塞尔曲线贝塞尔曲线一、一、Bezier 曲线曲线 1. 特征多边形特征多边形 特征多边形是用直线段依次特征多边形是用直线段依次连接平面上离散点所形成的折线连接平面上离散点所形成的折线多边形。它反映了所要设计曲线多边形。它反映了所要设计曲线的大致轮廓。的大致轮廓。P0P1P2P4P3P5 2. Bezier 曲线的参数方程曲线的参数方程 已知三个平面离散点已知三个平

12、面离散点P0、P1、P2,那么由这三点可以,那么由这三点可以定义二次抛物线段,其定义二次抛物线段,其参数矢量方程参数矢量方程可表示为:可表示为: 其中其中2 贝塞塞尔尔曲曲线 P0P1P2经过推导(经过推导(详见教材详见教材P58),可求出),可求出A0、A1、A2: t = 0时,抛物,抛物线经过P0,并与,并与P0 P1相切。相切。 t = 1时,抛物,抛物线经过P2,并与,并与P1 P2相切。相切。 设上述抛物曲线满足下列条件:设上述抛物曲线满足下列条件:2 贝塞塞尔尔曲曲线 因此,该抛物线段的参数矢量方程为:因此,该抛物线段的参数矢量方程为:或用矩阵形式表示:或用矩阵形式表示: 该方程

13、描述的曲线称为该方程描述的曲线称为二次贝塞尔曲线二次贝塞尔曲线。 其分量形式为:其分量形式为: 2 贝塞塞尔尔曲曲线 绘制方法:绘制方法:将参数将参数 t 的区间的区间0 , 1划分为划分为 n 等份,依等份,依次取次取t = 1/n , 2/n , 3/n , ,利用曲线参数方程计算对应的,利用曲线参数方程计算对应的各点坐标,并用直线段依次连接各点。各点坐标,并用直线段依次连接各点。 在已知三个平面离散点时,可绘制二次在已知三个平面离散点时,可绘制二次Bezier曲线;曲线; 若有若有n+1个平面离散点时,则可绘制个平面离散点时,则可绘制n次次Bezier曲线。曲线。其中其中2 贝塞塞尔尔曲

14、曲线 n次次Bezier曲线曲线参数矢量方程的一般形式:参数矢量方程的一般形式:其中:其中:Pi(i=0 ,1 , , n)为)为n+1个平面离散点,个平面离散点, ;, 其分量形式为:其分量形式为:2 贝塞塞尔尔曲曲线 实际应用中,对多个离散点(如:实际应用中,对多个离散点(如:7个离散点)绘制个离散点)绘制Bezier 曲线时:曲线时: 可以用可以用高次高次Bezier 曲线曲线进行绘制(如:进行绘制(如:7个离散点使用个离散点使用六次六次Bezier 曲线);曲线); 可以用可以用低次低次Bezier 曲线进行分段拟合曲线进行分段拟合(常使用二次和三(常使用二次和三次次Bezier 曲线

15、);需要对曲线);需要对连接点进行光滑处理连接点进行光滑处理(C 1连续、连续、 C 2连续),已有连续),已有CG方面的论文研究了此问题。方面的论文研究了此问题。地质绘图中常采用低次地质绘图中常采用低次Bezier 曲线的分段拟合。曲线的分段拟合。2 贝塞塞尔尔曲曲线 二、二次二、二次Bezier 曲线的程序设计思路曲线的程序设计思路 已知:已知:平面上平面上 3 个离散点个离散点P0、P1、P2的坐标的坐标( x0 , y0 )、( x1 , y1 )、( x2 , y2)。 二次二次Bezier 曲线参数方程的分量形式:曲线参数方程的分量形式:其中其中 编程思路:编程思路:将参数将参数

16、t 的区间的区间0 , 1划分为划分为 n 等份,依等份,依次取次取t = 1/n , 2/n , 3/n , ,利用方程计算对应各点的坐标,利用方程计算对应各点的坐标,并用直线段依次连接各点。并用直线段依次连接各点。2 贝塞塞尔尔曲曲线 曲线通过始点和终点,并与特征多边形首末两边相曲线通过始点和终点,并与特征多边形首末两边相切于始点和终点,中间点将曲线拉向自己。切于始点和终点,中间点将曲线拉向自己。 平面离散点控制曲线的形状,改平面离散点控制曲线的形状,改变一个离散点的坐标,曲线的形状将随变一个离散点的坐标,曲线的形状将随之改变(之改变(点对曲线具有整体控制性点对曲线具有整体控制性)。)。

17、曲线落在特征多边形的凸包之内,它比特征多边形曲线落在特征多边形的凸包之内,它比特征多边形更趋于光滑。更趋于光滑。三、三、Bezier 曲线的特点曲线的特点P0P1P2 贝塞尔曲线属于贝塞尔曲线属于“平均通过平均通过”式曲线。式曲线。2 贝塞塞尔尔曲曲线 3 B样条曲线样条曲线 B样条曲线是在样条曲线是在Bezier 曲线基础上发展起来的一类曲曲线基础上发展起来的一类曲线,它克服了线,它克服了Bezier 曲线整体控制性所带来的不便,最常曲线整体控制性所带来的不便,最常用的是二次和三次用的是二次和三次B样条曲线。样条曲线。一、二次一、二次B样条曲线样条曲线 1. 参数方程参数方程 已知三个平面离

18、散点已知三个平面离散点P0、P1、P2,由这三点可以定义,由这三点可以定义二次抛物线段,其二次抛物线段,其参数矢量方程参数矢量方程形式为:形式为: 二次二次B样条曲线参数方程的矩阵形式为:样条曲线参数方程的矩阵形式为: 二次二次B样条曲线参数方程的矩阵形式:样条曲线参数方程的矩阵形式: 二次二次Bezier曲线参数方程的矩阵形式:曲线参数方程的矩阵形式: 二次二次B样条曲线参数方程的分量形式:样条曲线参数方程的分量形式:3 B样条曲条曲线 分量形式为:分量形式为:其中其中 2. 二次二次B 样条曲线的特点样条曲线的特点 起点为起点为P0、P1点的中点,点的中点,并与线段并与线段P0P1相切;相

19、切;P0P1P23 B样条曲条曲线 终点为终点为P1、P2点的中点,并与线段点的中点,并与线段P1P2相切;相切; 除起点、终点外,中间点将曲线拉向自己。除起点、终点外,中间点将曲线拉向自己。 二次二次B 样条曲线为样条曲线为“平均通过式平均通过式”曲线曲线 3. 多点时二次多点时二次B 样条曲线的应用样条曲线的应用 二次二次B 样条曲线是针对样条曲线是针对3个离散点设计的,如果多于个离散点设计的,如果多于3个离散点,则采用二次个离散点,则采用二次B 样条曲线进行分段拟合。样条曲线进行分段拟合。 假设有假设有n+1个离散点,记为个离散点,记为Pi(i = 0 , 1 , , n),采),采用二

20、次用二次B样条曲线进行分段拟合的过程是:样条曲线进行分段拟合的过程是: 以以P0、P1、P2 为控制点绘制第为控制点绘制第1条二次条二次B样条曲线;样条曲线; 以以P1、P2、P3 2 ; ; 以以Pn-2、Pn-1、Pn n-1 ;3 B样条曲条曲线 6个离散点绘制二次个离散点绘制二次B 样条曲线的情况如下图:样条曲线的情况如下图:P4P3P2P1P0P5 问题:问题:如何使曲线始于如何使曲线始于P0而止于而止于P5? 由于二次由于二次B 样条曲线在连接点处具有相同的切线,故样条曲线在连接点处具有相同的切线,故多点的二次多点的二次B 样条曲线具有样条曲线具有C 1级连续。级连续。 4. 二次

21、二次B 样条曲线的边界处理(边界问题)样条曲线的边界处理(边界问题) 思路:增加两点思路:增加两点Ps、Pe;第;第1条曲线用条曲线用Ps代替代替P0,最后,最后一条曲线时用一条曲线时用Pe代替最后一个点。代替最后一个点。3 B样条曲条曲线 按照上述方法处理后,可绘制始于按照上述方法处理后,可绘制始于起点起点而止于而止于终点终点的的二次二次B B 样条曲线。样条曲线。 5. 5.多点二次多点二次B B样条曲线程序设计样条曲线程序设计 设计思想:设计思想: 在在 、 的延长线上,且的延长线上,且 在在 、 的延长线上,且的延长线上,且PeP0Pn边界处理示意图边界处理示意图PsP1Pn-13 B

22、样条曲条曲线 参数参数 存放点坐标的数组;存放点坐标的数组;点的个数;点的个数;0,1区间等分区间等分数。数。 边界处理边界处理 计算方程系数计算方程系数 绘制绘制B样条曲线样条曲线 移动到第一个点移动到第一个点边界处理边界处理段内按步长画线段内按步长画线计算第计算第K K段分量式参数方程的系数段分量式参数方程的系数nt步完否步完否?n-2段完否段完否?NNYY3 B样条曲条曲线 二次贝塞尔曲线二次贝塞尔曲线 由由3个平面离散点确定个平面离散点确定 曲线特点曲线特点 多点时可进行分段拟合,连接点一般不光滑多点时可进行分段拟合,连接点一般不光滑二次二次B样条曲线样条曲线 由由3个平面离散点确定个

23、平面离散点确定 曲线特点曲线特点多点时可进行分段拟合,连接点为多点时可进行分段拟合,连接点为C1级光滑级光滑 边界问题边界问题 二、三次二、三次B样条曲线样条曲线 三个平面离散点确定一条二次三个平面离散点确定一条二次B样条曲线,样条曲线,四个平面离四个平面离散点则确定一条三次散点则确定一条三次B样条曲线。样条曲线。 1.三次三次B样条曲线的参数表达式样条曲线的参数表达式 矩阵形式:矩阵形式:分量形式:分量形式:3 B样条曲条曲线 上式中上式中 2.三次三次B样条曲线的特点样条曲线的特点3 B样条曲条曲线 设中点为设中点为: 曲线起点曲线起点S位于位于 的中线的中线 上,距上,距 点点处;处;曲

24、线终点曲线终点E位于位于 的中线的中线 上上 , 距距 点点 处;处; 曲线起点切线平行于曲线起点切线平行于 ,终点切线平行于终点切线平行于 ;P0P1P2P3M1M2始、终点切线始、终点切线设四个离散点为设四个离散点为P0、P1、P2、P3;3 B样条曲条曲线 为为“平均通过式平均通过式” 曲线。曲线。 3.多点三次多点三次B样条曲线的分段拟合样条曲线的分段拟合 设已知设已知n个平面离散点,记为个平面离散点,记为Pi(i=1 , 2 , , n)。)。 以以P1、P2、P3、P4绘制第绘制第1条三次条三次B样条曲线;样条曲线; 以以P2、P3、P4、P5绘制第绘制第2条三次条三次B样条曲线;

25、样条曲线; 以以Pn-3、Pn-2、Pn-1、Pn绘制第绘制第n-3条三次条三次B样条曲线。样条曲线。 用上述方法绘出的各段曲线自然衔接,具用上述方法绘出的各段曲线自然衔接,具C 2级连续。级连续。 3 B样条曲条曲线 P0P1P2P3M1M2PsPe 4. 三次三次B样条曲线的边界处理样条曲线的边界处理 要使曲线起于始点,止于终点,必须对进行边界处理。要使曲线起于始点,止于终点,必须对进行边界处理。 思路:与二次思路:与二次B样条曲线类似,在两端各增加一个点;样条曲线类似,在两端各增加一个点;以新的点序列以新的点序列Ps、P0、P1、P2 、P3、Pe为控制点分别绘制为控制点分别绘制三次三次

26、B样条曲线。样条曲线。 5. 多点三次多点三次B样条曲线程序设计样条曲线程序设计 自学。自学。3 B样条曲条曲线 4 4 抛物线调配曲线抛物线调配曲线 前面介绍的前面介绍的Bezier 曲线和曲线和B样条曲线并不通过平面上样条曲线并不通过平面上所有已知的离散点,也就是说,它们是一种所有已知的离散点,也就是说,它们是一种“平均通过平均通过”式曲线。式曲线。 如果要求曲线通过所有的已知点如果要求曲线通过所有的已知点,上述两种方法就不,上述两种方法就不能使用,为此再介绍能使用,为此再介绍抛物线调配曲线,它是一条抛物线调配曲线,它是一条“点点通点点通过过”式曲线式曲线。一、抛物线调配曲线的绘图原理一、

27、抛物线调配曲线的绘图原理 设已知设已知n个平面离散点个平面离散点Pi(i = 1 , 2 , , n),),利用二利用二次抛物线进行分段拟合次抛物线进行分段拟合: 以以P1、P2、P3为控制点绘制第一条过三点的抛物线段;为控制点绘制第一条过三点的抛物线段; 以以P2、P3、P4为控制点绘制第二条过三点的抛物线段;为控制点绘制第二条过三点的抛物线段; 最后,以最后,以Pn-2、Pn-1、Pn为控制点绘制第为控制点绘制第n-2条过三点条过三点的抛物线段。的抛物线段。 每相邻两条抛物线段的相交部分会出现每相邻两条抛物线段的相交部分会出现2条曲线段。条曲线段。Pi+1Pi+2Pi+3Pi合并合并 调配

28、:调配:对相交部分的对相交部分的2条曲线段进行合并(调配)处条曲线段进行合并(调配)处理。理。 4 抛物抛物线调配曲配曲线 抛物线调配曲线需要解决的问题:抛物线调配曲线需要解决的问题: 过三点的二次抛物线参数方程;过三点的二次抛物线参数方程; 相邻抛物线相交部分相邻抛物线相交部分2条曲线段的调配(合并)方条曲线段的调配(合并)方法;法; 合并后连接点的光滑问题。合并后连接点的光滑问题。Pi+1Pi+2Pi+3Pi合并合并4 抛物抛物线调配曲配曲线 二、过三点的抛物线参数方程二、过三点的抛物线参数方程 已知三个平面离散点已知三个平面离散点P0、P1、P2,那么由这三点定义,那么由这三点定义的二次

29、抛物线的二次抛物线参数矢量方程参数矢量方程为:为: 条件为:条件为: t = 0时,抛物线经过时,抛物线经过P0点;点; t = 时,抛物线经过时,抛物线经过P1点,且切线矢量点,且切线矢量=P2- -P0; t = 1时,抛物线经过时,抛物线经过P2点。点。 二次抛物线参数方程的矩阵形式:二次抛物线参数方程的矩阵形式: 4 抛物抛物线调配曲配曲线 展开:展开: 三、调配曲线的计算公式三、调配曲线的计算公式 设已知设已知n个平面离散点个平面离散点Pi(i = 1 , 2 , , n),依次取),依次取P1、P2、P3、 、Pn-2作为起点绘制过三点的抛物线,共作为起点绘制过三点的抛物线,共绘出

30、绘出n-2条抛物线段。条抛物线段。Pj+2 Pj+3 Pj+1 P jSj+1 (tj+1)Sj (tj)4 抛物抛物线调配曲配曲线 Pj+2 Pj+3 Pj+1 P jSj+1 (tj+1)Sj (tj)第第j 条抛物线参数方程为:条抛物线参数方程为:第第j +1条抛物线的参数方程为:条抛物线的参数方程为: 4 抛物抛物线调配曲配曲线 合并合并(调配调配)曲线取为曲线取为第第j条曲线与第条曲线与第j+1条曲线的加权条曲线的加权平均平均。 设权函数为:设权函数为:则则调配调配(合并合并)曲线曲线(起点为(起点为Pj+1、终点为、终点为Pj+2)的方程的方程为:为:方程右边三个参数:方程右边三个

31、参数:T、t j、t j+1的取值范围为:的取值范围为:Pj+2 Pj+3 Pj+1 P jSj+1 (tj+1)Sj (tj)4 抛物抛物线调配曲配曲线 4 抛物抛物线调配曲配曲线 Pj+2 Pj+3 Pj+1 P jSj+1 (tj+1)Sj (tj) 三个参数三个参数T、t j、t j+1的取值范围:的取值范围: T的范围:的范围:0T1 t j的范围:调配曲线合并的是第的范围:调配曲线合并的是第j条曲线的后半段,条曲线的后半段,故故0.5t j1 t j+1的范围:调配曲线合并的是第的范围:调配曲线合并的是第j+1条曲线的前半条曲线的前半段,故段,故0t j+10.5 设参数设参数 t

32、 的范围为的范围为0t0.5,有:,有:调配曲线方程调配曲线方程变为:变为:再将前面再将前面S j和和S j+1的方程代入,整理后得到:的方程代入,整理后得到:上式称为上式称为抛物线调配曲线的参数方程抛物线调配曲线的参数方程。4 抛物抛物线调配曲配曲线 当当j =1时,调配曲线位于时,调配曲线位于P2、P3之间;之间; 当当j =2时,调配曲线位于时,调配曲线位于P3、P4之间;之间; 当当j =n-3时,调配曲线位于时,调配曲线位于Pn-2、Pn-1之间。之间。 因此,因此,n个点可得到个点可得到n-3条调配曲线,首尾两条没有调条调配曲线,首尾两条没有调配。配。4 抛物抛物线调配曲配曲线 如

33、何利用调配方程对首尾两条进行调配?如何利用调配方程对首尾两条进行调配? 分别在首尾补上两点分别在首尾补上两点P0、Pn+1。 依据补点后新的点序列依据补点后新的点序列P0、P1、Pn、Pn+1,可绘,可绘制制n-1调配曲线。调配曲线。4 抛物抛物线调配曲配曲线 如何确定如何确定P0、Pn+1的坐标?的坐标? 对于对于P0点,满足:点,满足: 对于对于Pn+1点,满足:点,满足: 常设:常设:因此:因此:P0=P2,Pn+1=Pn-1 同时,绘出的同时,绘出的n-1条调配曲线条调配曲线在连接点处具有在连接点处具有C 1级连级连续续(证明略)。(证明略)。4 抛物抛物线调配曲配曲线 来源于早期的手

34、工绘图:绘图员把一根富有弹性的细来源于早期的手工绘图:绘图员把一根富有弹性的细木条放在数据点的位置上,并施以力量,从而使木条弯曲木条放在数据点的位置上,并施以力量,从而使木条弯曲通过每一个数据点,木条变形后的形态就是通过每一个数据点,木条变形后的形态就是三次参数样条三次参数样条曲线曲线。5 5 三次参数样条曲线三次参数样条曲线 由弹性力学理论可以证明:由弹性力学理论可以证明:曲线近似为分段三次多项曲线近似为分段三次多项式,且在连接点处具有式,且在连接点处具有C 2连续连续。 绘制三次参数样条曲线的基本思路:绘制三次参数样条曲线的基本思路: 首先,首先,构建构建2点间曲线的三次多项式参数方程点间

35、曲线的三次多项式参数方程; 然后,然后,进行分段拟合进行分段拟合,依次绘制相邻两点间的曲线,依次绘制相邻两点间的曲线段;段; 最后,最后,对各曲线段进行光滑连接处理对各曲线段进行光滑连接处理(C 2连续)。连续)。 主要问题:主要问题:构建曲线的三次多项式参数方程。构建曲线的三次多项式参数方程。5 三次参数三次参数样条曲条曲线 一、过两点的三次多项式参数方程一、过两点的三次多项式参数方程 设已知两点设已知两点P1、P2,则过两点的曲线三次参数矢量方,则过两点的曲线三次参数矢量方程为:程为:t1P1、P2点之点之间距离(弦距离(弦长)tP1、P点之点之间距离(弦距离(弦长)(曲线上的任一点)(曲

36、线上的任一点)5 三次参数三次参数样条曲条曲线 条件为:条件为: t =0时通过时通过P1点,且曲线段在该点的切矢量为点,且曲线段在该点的切矢量为P1; t =t1时通过时通过P2点,且曲线段在该点的切矢量为点,且曲线段在该点的切矢量为P2。P1P25 三次参数三次参数样条曲条曲线 条件为:条件为: t =0时通过时通过P1点,且曲线段在该点的切矢量为点,且曲线段在该点的切矢量为P1; t =t1时通过时通过P2点,且曲线段在该点的切矢量为点,且曲线段在该点的切矢量为P2。当当 t =0 时,有时,有 当当 t =t1 时,有时,有5 三次参数三次参数样条曲条曲线 解出解出B0、B1、B2、B

37、3:将系数代入方程中整理,可得到:将系数代入方程中整理,可得到:5 三次参数三次参数样条曲条曲线 上式即为上式即为过两点的三次多项式参数方程的矢量形式过两点的三次多项式参数方程的矢量形式。其分量形式为:其分量形式为:5 三次参数三次参数样条曲条曲线 若有若有n个平面离散点个平面离散点Pi(i =1 , 2 , , n),进行),进行分段分段拟合拟合,每相邻两点之间使用一个三次多项式参数方程进行,每相邻两点之间使用一个三次多项式参数方程进行曲线绘制,共有曲线绘制,共有n-1个曲线段个曲线段。 一般情况下,对于其中由一般情况下,对于其中由Pi、Pi+1两点构成的两点构成的第第 i 条曲条曲线段线段

38、的三次多项式参数方程可表示为:的三次多项式参数方程可表示为: 在这在这n-1个曲线方程中,涉及到个曲线方程中,涉及到P1、P2、 、Pn共共n个切矢量个切矢量。5 三次参数三次参数样条曲条曲线 二、二、n个切矢量的求解个切矢量的求解 求解思路:求解思路:利用相邻两条曲线段之间的连接具有利用相邻两条曲线段之间的连接具有C 2级级光滑光滑。 设第设第i-1条曲线与第条曲线与第 i 条曲线相连:条曲线相连: 两条曲线在连接点两条曲线在连接点 Pi 具有具有C 2级连续,即级连续,即将两条曲线的参数方程代入,整理后可得到关系式:将两条曲线的参数方程代入,整理后可得到关系式:Pi-1PiPi+15 三次

39、参数三次参数样条曲条曲线 设第设第i-1条曲线与第条曲线与第 i 条曲线相连,可得到关系式:条曲线相连,可得到关系式: n个点有个点有n-1条曲线,每两条曲线可以得到一个关系方条曲线,每两条曲线可以得到一个关系方程,共有程,共有n-2个方程个方程。 需要对需要对P1、P2、 、Pn共共n个切矢量个切矢量求解,尚缺少求解,尚缺少两个方程。两个方程。 补充首尾两点补充首尾两点P1、Pn的边界条件。的边界条件。5 三次参数三次参数样条曲条曲线 补充首尾两点补充首尾两点P1、Pn的边界条件有三种方法:的边界条件有三种方法: 固定端边界条件固定端边界条件 直接给定两端的切矢量直接给定两端的切矢量P1、P

40、n。 抛物端边界条件抛物端边界条件 两个端点的三阶导数为零,即两个端点的三阶导数为零,即 自由端边界条件自由端边界条件 两个端点的二阶导数为零,即两个端点的二阶导数为零,即 由上页的由上页的n-2个方程和个方程和2个边界条件构成一个方程组,个边界条件构成一个方程组,称之为称之为切矢量方程组切矢量方程组,对其求解可得到,对其求解可得到n个切矢量个切矢量P1、P2、 、Pn的值。的值。5 三次参数三次参数样条曲条曲线 切矢量方程组的求解可采用一般线性方程组的求解方法。教材切矢量方程组的求解可采用一般线性方程组的求解方法。教材采用采用追赶法,抛物线边界条件追赶法,抛物线边界条件,详细求解过程略。,详

41、细求解过程略。 最后可得到一个递推公式:最后可得到一个递推公式:初始条件:初始条件:,5 三次参数三次参数样条曲条曲线 由由Pi、Pi+1两点构成的三次多项式参数方程:两点构成的三次多项式参数方程: 绘制思路:绘制思路:将参数将参数 t 的区间的区间0 , ti 划分为划分为 k 等分,每等分,每一等分一等分 dt = ti / k,依次取,依次取t = dt , 2dt , 3dt , j* *dt,利,利用方程计算对应各点的坐标,并用直线段依次连接各点。用方程计算对应各点的坐标,并用直线段依次连接各点。 对于对于n个点个点Pi(i =1 , 2 , , n),进行),进行分段拟合分段拟合,

42、每,每相邻两点之间使用一个参数方程进行绘制。相邻两点之间使用一个参数方程进行绘制。5 三次参数三次参数样条曲条曲线 5 三次参数三次参数样条曲条曲线 三、三次参数样条曲线子程序设计三、三次参数样条曲线子程序设计以直线连接所有等以直线连接所有等分点分点把全部等分点坐标把全部等分点坐标存入数组存入数组xx、yy计算计算n个切矢量个切矢量Pi(i = 1, 2 , , n)计算每相邻两点计算每相邻两点之间的弦长之间的弦长 ti求相邻两点间的求相邻两点间的 k个个等分点坐标等分点坐标n-1条条曲线曲线四、三次参数样条曲线绘图实例四、三次参数样条曲线绘图实例n123456789x0y10.7070-0.

43、707-1-0.70700.7071 在区间在区间0, 2 上采集余弦曲线上采集余弦曲线 y=cos(x)的的9个坐标点:个坐标点:5 三次参数三次参数样条曲条曲线 本章小结本章小结 贝塞尔曲线贝塞尔曲线 B样条曲线样条曲线 抛物线调配曲线抛物线调配曲线 三次参数样条曲线三次参数样条曲线“平均通过平均通过”式式“点点通过点点通过”式式贝塞尔曲线贝塞尔曲线 二次贝塞尔曲线二次贝塞尔曲线v 由由3个平面离散点确定个平面离散点确定v 曲线特点曲线特点v 多点时可进行分段拟合,多点时可进行分段拟合,连接点一般不光滑连接点一般不光滑B样条曲线样条曲线二次二次B样条曲线样条曲线v由由3个平面离散点确定个平

44、面离散点确定v曲线特点曲线特点v多点时可进行分段拟合,多点时可进行分段拟合,连接点为连接点为C1级光滑级光滑v 边界问题边界问题三次三次B样条曲线样条曲线v由由4个平面离散点确定个平面离散点确定v曲线特点曲线特点v多点时可进行分段拟合,多点时可进行分段拟合,连接点为连接点为C2级光滑级光滑v 边界问题边界问题抛物线调配曲线抛物线调配曲线 “调配调配”即即“合并合并” 由由3个点所确定的二次抛物线个点所确定的二次抛物线 对相邻抛物线相交部分的对相邻抛物线相交部分的2条曲线进行加权平均条曲线进行加权平均 多点时可进行分段拟合,相邻调配曲线的多点时可进行分段拟合,相邻调配曲线的连接点连接点具有具有C1级光滑级光滑 首尾两条曲线的调配问题首尾两条曲线的调配问题三次参数样条曲线三次参数样条曲线 由由2点所确定的三次多项式曲线点所确定的三次多项式曲线 曲线特点曲线特点 多点时可进行分段拟合多点时可进行分段拟合v n个切矢量的求解(边界条件)个切矢量的求解(边界条件)v 连接点为连接点为C2级光滑级光滑

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号