Presentation is loading. Please wait.

Presentation is loading. Please wait.

自由曲线与曲面(I) 计算机科学与技术.

Similar presentations


Presentation on theme: "自由曲线与曲面(I) 计算机科学与技术."— Presentation transcript:

1 自由曲线与曲面(I) 计算机科学与技术

2 曲线曲面 在工程上,曲线曲面的应用十分广泛。如根据实验、观测或数值计算获得的数据来绘制出一条光滑的曲线,以描述事物的各种规律。在汽车、飞机、船舶、家电等产品的外形设计中,要用到大量的曲线和曲面来描述其几何形状。

3 曲线和曲面分类 规则的解析曲面 可以用解析函数描述的,如平面、 圆柱面、圆锥面和圆环等 自由曲面 不能用解析函数描述的,如
汽车外形、飞机机翼和轮 船船体等

4 常用的自由曲线与曲面 Hermite - Fraguson(Coons)曲线曲面 Bezier曲线曲面 三次样条曲线曲面 B样条曲线曲面
NURBS曲线曲面

5 曲线曲面表示 想要表示曲线和曲面,则必须考虑以下几个问题: 稳定 平滑 易于求值 采用邻近数据点还是需要插值计算 可导 插值数据点 数据点
近似曲线 插值数据点

6 曲线曲面表示 表示曲线和曲面的基本方法有两种:非参数法和参数法。 (1)非参数法 y=f(x) 显函数 f(x,y)=0 隐函数
非参数法(显式或隐式)表示存在下述问题: 与坐标轴相关; 会出现斜率为无穷大的情形(如垂线);

7 曲线曲面表示 (2)参数法 x=f(t) y=g(t) 参数表示:曲线上任一点的坐标均表示成给定参数的函数。假定用t表示参数,平面曲线上任一点P可表示为 p(t) p(tmin) p(tmax)

8 参数表示的优点 二维和三位空间形式上是一致的 有更大的自由度来控制曲线、曲面的形状 对曲线、曲面进行变换,可对其参数方程直接进行几何变换
便于处理斜率为无穷大的情形,不会因此而中断计算 一般使用参数方程来描述曲线与曲面 p(t) p(tmin) p(tmax)

9 直线参数方程 一条直线,两个端点为p0和p1 ,其参数方程: p(1)= p1 p(t)=p0+t(p1-p0) p(0) = p0
p(1)= p0 +d p(t)=p0+td d p(0) = p0

10 曲线的多项式形式 在计算机图形学中采用多项式的形式描述曲线和曲面 系数矩阵是n+1列的 系数选择有3(n+1)个自由度
由于x, y 和 z分量是相互独立的,可以使用三个独立方程

11 三次曲线表示 参数方程表示: 矢量表示: 矩阵表示:

12 曲线段 每一段曲线用下列表示 p(t)=[x(t), y(t), z(t)]T, 1  t  0
在传统的数学中, 我们将设计一条完整的曲线 在计算机图形学和CAD中, 最好设计成曲线段切相互连接 p(t) q(t) p(0) q(1) 连接点 p(1) = q(0)

13 曲线的多项式形式 易于求值(计算) 到处连续和可导 必须考虑在连接点处的连续性,包括导数的连续性 p(u) q(u)
联接点p(1) = q(0) 但 p’(1)  q’(0)

14 曲线的连续性条件 为了保证曲线曲面在连接点处平滑过渡,需要满足连续性条件: 参数连续性条件: C0连续:两段曲线交点处具有相同的坐标,连接

15 曲线的连续性条件 几何连续性条件: G0连续:两段曲线交点处具有相同的坐标 G1连续:两段曲线交点处的一阶导数成比例,但大小不一定相等

16 曲线的处理方法 工程上常用的曲线可以分为两类: 规则曲线 自由(不规则)曲线 

17 曲线的处理方法-规则曲线 规则曲线: 可以用函数或参数方程直接表示的曲线 二维平面 x=f(t) 空间曲线 y=g(t) x=f(t)
z=h(t) 空间曲线 x=f(t) y=g(t) 参数t在一定区间变化,可以求得曲线上不同的坐标点,连接这些坐标点就能在屏幕上画出曲线,t变化间隔越小,曲线画得越精细。

18 曲线的处理方法-自由曲线 不规则曲线:工程中除了用到前述的规则曲线外,还常常遇到这样的情况:已知一些计算值或测试数据,要构造一条光滑曲线,通过或贴近这些离散点数据,这样构造出来的曲线称为拟合曲线。 拟合包括两种形式:插值和逼近

19 曲线的处理方法-自由曲线 两种类型的数据点: 型值点:曲线或曲面通过的点。 控制点:控制曲线或曲面形状,但不一定通过的点。

20 曲线的处理方法-自由曲线 插值(Interpolation):当用一组型值点(数据点)来指定曲线的形状时,曲线精确地通过这些型值点序列,而形成光滑的曲线。 逼近(Approximation) :当用一组控制点来指定曲线曲面的形状时,求出曲线的形状,但不必通过这些控制点。

21 Bezier曲线 Bezier曲线由法国雪铁龙(Citroen)汽车公司的Paul de Casteljau于1959年发明,后来又由法国雷诺(Renault)汽车公司的工程师Bezier于1962年独立发明。 Bezier曲线在各种CAD系统、大多数图形系统和图形开发软件包中广泛应用

22 Bezier曲线 Bezier的想法从一开始就面向几何而不是面向代数。Bezier曲线由控制多边形唯一定义的。
基本特点: Bézier曲线可以由任意数目的控制点来拟合,控制点的数目决定了Bézier曲线的阶次。 控制点 对于三次Bezier曲线,给出4个点,曲线的起点、终点(必须经过的点)两个型值点,另外两个控制点控制Bezier曲线在起点和终点之间的形状。

23 几种典型的三次Bezier曲线

24 Bezier曲线的定义和性质 Bezier曲线的定义 给定空间n+1个点的位置矢量Pi(i=0,1,2,…,n)
则n次多项式曲线P(t)称为n次Bezier曲线: P0 P1 P2 P3 控制顶点 控制多边形 Bézier多项式次数要比控制点个数小1!

25 Bezier曲线的基函数 其中,Pi构成该Bezier曲线的特征多边形,Bi,n(t) 是n次Bernstein基函数:
00=1, 0!=1

26 二次Bezier曲线 二次Bezier曲线,即n=2的二次多项式,控制多边形有3个控制点P0, P1, P2, Bezier曲线是一段抛物线。

27 三次Bezier曲线 三次Bezier曲线,即n=3的三次多项式,控制多边形有4个控制点P0, P1, P2,P3,三次Bezier曲线是自由曲线。

28 Bezier曲线的性质 (1)端点性质 ①曲线端点位置矢量
由Bernstein基函数的端点性质可以推得, 当t=0时,P(0)=P0 ;当t=1时,P(1)=Pn。 由此可见,Bezier曲线的起点、终点与相 应的特征多边形的起点、终点重合。 P0 P1 P2 P3

29 Bezier曲线的性质 ②切矢量 因为, 所以 当t=0时,P′(0)=n(P1-P0), 当t=1时,P′(1)=n(Pn-Pn-1), 这说明Bezier曲线的起点和终点处的切线方向和特征多 边形的第一条边及最后一条边的走向一致。 P0 P1 P2 P3

30 Bezier曲线的性质 (2)对称性 这个性质说明Bezier曲线在起点处有什么 几何性质,在终点处也有相同的性质。 不是形状对称
保持Bezier曲线全部控制点Pi的坐标位置不变, 只是将控制点Pi的排序颠倒,曲线形状保持不变, 走向相反 这个性质说明Bezier曲线在起点处有什么 几何性质,在终点处也有相同的性质。 P0 P1 P2 P3

31 Bezier曲线的性质 (3)凸包性 点集的凸包 包含这些点的最小凸集 Bezier曲线位于其控制顶点的凸包之内
点集Q的凸包是指一个最小凸多边形,满足Q中的点或者在多边形边上或者在其内。

32 Bezier曲线的性质 (4)几何不变形 Bezier曲线的位置和形状与控制多边形的顶点的位置有关,而不依赖于坐标系的选择 (5)仿射变换 对Bezier曲线做放射变换相当于先对控制多边形的顶点做仿射变换,然后再画曲线

33 Bezier曲线的递推(de Casteljau)算法
计算Bezier曲线上的点,可用Bezier曲线方程,但使用de Casteljau提出的递推算法则要简单的多。 递推公式 给定空间n+1个控制点Pi(i=0,1, 2n)及参数t,de Casteljau递推算法表述为

34 二次Bezier曲线递推算法 r为递推次数 当n=2时,有 规定: 第一级递推 第二级递推
de Casteljau算法的基础是在线段P0P1上选择一个点P(t),使得P(t)点划分P0P1为 t和(1-t)两段, 依次对原始控制多边形的每一边执行同样的定比分割,所得的分点就是第一级递推生成的中间顶点P1i (i=0,1,…,n-1),重复进行下去,直到r=n,得到一个中间顶点P2i (i=0,1,…,n-2)。

35 二次Bezier曲线的递推算法 设P0、P20、P2是一条抛物线上顺序三个不同的点。过P0和P2点的两切线交于P1点,在P20点的切线交P0P1和P1P2于P10和P11,则如下比例成立: 抛物线的三切线定理

36 三次Bezier曲线的递推算法 当n=3时,有 第一级递推 第二级递推 第三级递推

37 三次Bezier曲线的递推算法 ) 3 / 1 ( P = 1/3 求Bezier曲线 上一点(n=3,t=1/3) ) 3 / 2 ( P
P = 1/3 求Bezier曲线 上一点(n=3,t=1/3) 2 ) 3 / 2 ( P = 1 1/3 求Bezier曲线 上一点(n=3,t=2/3) 2/3

38 Bezier曲线的拼接 几何设计中,一条Bezier曲线往往难以描述复 杂的曲线形状。
采用分段设计,然后将各段曲线相互连接起来, 并在接合处保持一定的连续条件。

39 Bezier曲线的拼接 P2、P3(=Q0)、Q1三点共线,才能保证两Bezier曲线段光滑连接 G0连续:P3 = Q0 G1连续: P1


Download ppt "自由曲线与曲面(I) 计算机科学与技术."

Similar presentations


Ads by Google