62
机机 CAD/CAM 机机 机机机机机机机机机机机机

机械 CAD/CAM 技术

  • Upload
    glyn

  • View
    87

  • Download
    5

Embed Size (px)

DESCRIPTION

机械 CAD/CAM 技术. 山东理工大学机械工程学院. 第三章 计算机辅助图形处理. 第一节 二维图形变换的基本原理. 第二节 三维图形变换的基本原理. 第三节 复合变换. 第四节 窗视变换与裁减. 第五节 隐藏线与隐藏面的处理 (不讲). 第六节 图形生成方法. 第一节 二维图形变换的基本原理. 在二维平面中,任何一个图形都可以认为是点之间的连线构成,点是最基本的图形元素,图形的几何变换,实际上是点的坐标变换。. 一.概述.  1 .点的表示 - PowerPoint PPT Presentation

Citation preview

Page 1: 机械 CAD/CAM 技术

机械 CAD/CAM 技术山东理工大学机械工程学院

Page 2: 机械 CAD/CAM 技术

2

第三章 计算机辅助图形处理第一节 二维图形变换的基本原理

第二节 三维图形变换的基本原理

第三节 复合变换

第四节 窗视变换与裁减

第五节 隐藏线与隐藏面的处理(不讲)

第六节 图形生成方法

Page 3: 机械 CAD/CAM 技术

3

第一节 二维图形变换的基本原理

1 .点的表示 在二维空间中,表达一个点 P 可以用直角坐标 (X,Y) 来表示,其矩阵形式为 [x,y] 或 [x/y] ,表示点的矩阵通常被称为点的位置向量, 若一个图形有多个点组成,则其矩阵形式为

在二维平面中,任何一个图形都可以认为是点之间的连线构成,点是最基本的图形元素,图形的几何变换,实际上是点的坐标变换。

一.概述

Page 4: 机械 CAD/CAM 技术

4

2 .变换距阵 设 P 变换后的点为, p` 的表达式可用 P 与一个2×2 的变换矩阵 T 的乘积来表示。更确切地说, P` 可以表达为 :

新点的位置取决于变量 A , B , C , D 的值。

Page 5: 机械 CAD/CAM 技术

5

3 .齐次坐标 齐次坐标表示法就是用 N+1 维向量来表示一个 N 维向量。在齐次坐标系统中,点 (X,Y) 用 (X,Y,H) 来表达,其中 H 为非零的一个任意数。点 (X,Y) 的标准齐次坐标表达为 (X/H,Y/H,1) ,由于 H 是一个任意非零常量,为了简便起见,我们通常取 H=1 。齐次坐标系统中的点 (X,Y,1) 包含有笛卡尔坐标上的点 (X,Y) 。采用齐次坐标原 2×2 变换矩阵现在应扩展成 3×3的矩阵 :

该矩阵可以分为四个部分,其中左上角可以完成,比例变换、镜象变换、旋转变换、错切变换等。左下角完成平移变换,右上角完成透视变换,右下角完成全比例变换。从变换结果看, 3×3 的变换矩阵包含了 2×2 的变换矩阵的全部结果。

Page 6: 机械 CAD/CAM 技术

6

1. 恒等变换 点( x , y )在变换前后位置不变。即 x`=x,y`=y ,变换矩阵为:

二.基本变换类型

Page 7: 机械 CAD/CAM 技术

7

2. 比例变换 点按到原点的距离比例放大或缩小,比例因子为 A , D ,变换表达式为 x`=Ax,y`=Dy, 变换矩阵为 :

这种类型的变换矩阵使点 (X , Y) 在 X , Y 轴方向上均按 A 、D 比例发生变比,因而称之为比例变换。当 A=1 , D>0 时,点的坐标在 Y 方向发生了伸缩。当 D=1,A>0 时,点的坐标在 X 方向发生了伸缩。

Page 8: 机械 CAD/CAM 技术

8

当 A,D 是大于 0 的任何数时, A = D>1 图形放大 ,A= D<1 图形缩小。且图形只是大小发生了变化 , 图形形状不变, 从图中完全可以看出,放大的结果都是相对于XY 坐标系统的原点进行的。 当 A≠D, 其形状就会发生畸变。下图为比例变换的几种情况。

Page 9: 机械 CAD/CAM 技术

9

3. 镜像变换(对称反射变换) 在变换矩阵 T 中,当 A 或 D 或者两者都是负值时, S=1,其它都为零。变换后产生的坐标与原坐标关于 X 轴、 Y 轴或原点对称,如下图所示。这种产生对称图形的变换称为镜像变换或对称变换。

1) 对原点镜象当 A=D=-1 ,其余为零,变换矩阵为:

Page 10: 机械 CAD/CAM 技术

10

Page 11: 机械 CAD/CAM 技术

11

2) 对 x 轴镜象 当 A=1 , D=-1 ,变换矩阵为:

Page 12: 机械 CAD/CAM 技术

12

3 )对 Y 轴镜象当 A=-1,D=1 时。变换矩阵为:

Page 13: 机械 CAD/CAM 技术

13

4 .错切变换 在左上角的变换矩阵中,令变换矩阵的主对角线上的元素 A=D=S=1, 对点 P(X,Y) 进行变换。变换矩阵为:

从上面的变换公式可以看出, C 和 B 两元素分别使点产生了沿 X 方向的比例移动和沿 Y 方向的比例移动。其图形的变化类似于金属的错切变形,如下图 C 所示,这种移动称为错切,这种变换称为错切变换。

Page 14: 机械 CAD/CAM 技术

14

沿 Y 轴错切: 假定矩阵中 A=D=1 ,而 C=0 。这样P’=(X’Y’1)=(X Y+BX 1),

沿 X 轴错切: 假定矩阵中 A=D=1 ,而 B=0 。这样P’=(X’Y’1)=(X+DY Y 1),

Page 15: 机械 CAD/CAM 技术

15

5 .旋转变换 旋转变换是将图形绕某一固定点顺时针或逆时针旋转一个角度。规定:逆时针旋转方向为正,顺时针为负。绕原点逆时针旋转 θ 角的数学表达式为: X’=XCOSθ-YSINθ Y’=YCOSθ+XSINθ 用变换矩阵表示为:

Page 16: 机械 CAD/CAM 技术

16

变换的效果如图所示。

Page 17: 机械 CAD/CAM 技术

17

6 .平移变换 点沿 x 轴和 y 轴平移 L , M ,平移表达式为: X’=X+L ,Y’=Y+M 对应的变换矩阵为:

平移效果如图所示。

Page 18: 机械 CAD/CAM 技术

18

7 .通用变换矩阵:综上所述,我们可以总结出以上变换的通用变换矩阵:

所有变换情况 s=1 , p=O=01 )恒等变换:, L=M=0 , C=B=0 , A=D=12 )比例变换: B=C=L=M=0 , A , D 大于零3 )镜象变换:对 X 轴 A=1 , D=-1 , B=C=L=M=0 对 Y 轴 A=-1 , D=1 , B=C=L=M=0 对原点 A=D=-1 , B=C=L=M=04 )错切变换: A=D=1 , L=M=0 , B , C 不同时为 05 )旋转变换: A=D=CosQ , C=-sinQ , B=sinQ , L=M=06 )平移变换: A=D=1 , B=C=0 , L , M 不等于 0

Page 19: 机械 CAD/CAM 技术

19

三.复合变换:1 .绕任意点的旋转 当一个图形绕任意点 Q(L,M) 的旋转。如图 所示,由于只知道绕原点的旋转,对于绕任意一点的旋转,我们可以将问题分解成三个不同的基本问题,这需要三种连续的变换 :

Page 20: 机械 CAD/CAM 技术

20

第一步 : 平移旋转中心 Q 到原点,图形也随着一起平移。 这样旋转中心变为原点,可以利用绕原点的旋转矩阵。

第二步 : 完成所需要的旋转

Page 21: 机械 CAD/CAM 技术

21

第三步 : 将旋转后的结果平移回原来的中心 Q

所得的变换结果是上面的三个矩阵的乘积

Page 22: 机械 CAD/CAM 技术

22

2 .相对任意点的比例变换 利用平移矩阵和比例变换矩阵,经过三步有序的变换,可以得到相对于任意一点 Q(L,M) 的比例变换的组合矩阵。其变换顺序如下:

第一步: 将原图中任意一点 Q ,平移到坐标原点,整个图形随之移动,这样为下一步使用相对原点的比例变换矩阵做好了准备

Page 23: 机械 CAD/CAM 技术

23

第二步,实施比例变换。

第三步,将任意点 Q 平移至原来位置,整个图形随之移动。

Page 24: 机械 CAD/CAM 技术

24

这样就完成了相对任意点的比例变换。上述连续变换的组合矩阵为:

Page 25: 机械 CAD/CAM 技术

25

3 .对任意直线作镜象 假如要将一个三角形对直线 AX+BY+C=0 作镜象,如图 a所示 , 也可以使用基本的变换方法来实现。 直线与 Y 轴的交点 (0,-C/B), 直线与 X 轴的交点 (-C/A,0), 与 X 轴的夹角θ =Arctg | A/B |对任意线 AX+BY+C=0 作镜象具体步骤如下 :

Page 26: 机械 CAD/CAM 技术

26

第一步 : 沿 Y 轴平移 C/B 使直线过原点。平移后的图形如图 B 。

Page 27: 机械 CAD/CAM 技术

27

第二步 : 顺时针旋转 θ 角,使直线 AX+BY+C=0 位于 X 轴上。旋转后的情形如图 C 所示。

第三步 : 物体对 X 轴镜象,镜象后的图形如图 d

Page 28: 机械 CAD/CAM 技术

28

第四步 应用步骤二的逆过程 , 结果如图 e

第五步 应用步骤一的逆过程 , 结果如图 f

Page 29: 机械 CAD/CAM 技术

29

第四、第五步的目的是返回物体到原来的位置。表达这五步的完整变换是T=T1×R(-θ) ×T2×R(θ)×T3 化简后得

在多个矩阵进行级联时,要注意矩阵的顺序。

Page 30: 机械 CAD/CAM 技术

30

Page 31: 机械 CAD/CAM 技术

31

第二节 三维图形变换的基本原理 三维变换和二维变换一样,三维坐标的齐次坐标的表达式为: P=[X Y Z 1], 对应的变换矩阵为:

同二维变换一样,也可以分四个区,左上角可以完成,比例变换、镜象变换、旋转变换、错切变换等。左下角完成平移变换,右上角完成透视变换,右下角完成全比例变换。

Page 32: 机械 CAD/CAM 技术

32

一.三维图形的基本变换1 、平移变换

与二维平移变换一样,三维平移变换矩阵为:

P’=[X’Y’Z’1]=[X+L Y+M Z+N 1] 其中: L 为 X 方向上的平移量, M 为 Y 方向上的平移量,N 为 Z 方向上的平移量。

Page 33: 机械 CAD/CAM 技术

33

2 .比例变换三维比例变换的矩阵为:

P’=[X’Y’Z’1]=[AX EY IZ 1]其中: A 为 X 方向上的比例系数, E 为 Y 方向上的比例系数, I为 Z 方向上的比例系数。当 A=E=I>0, 则图形按同一比例放大或缩小,否则如果三者不等,但大于零,则图形会发生变形。

Page 34: 机械 CAD/CAM 技术

34

3 .错切变换错切变换的矩阵是:

P’=[X’Y’Z’1]=[X+DY+GZ Y+BX+HZ Z+CX+FY 1]从公式中可以看出,变换后一个坐标的变换结果受另外两个坐标的影响。错切变换是绘制斜轴测图的基础。

Page 35: 机械 CAD/CAM 技术

35

4 .旋转变换 二维旋转变换是围绕点,三维变换是围绕轴旋转。同样,旋转角度沿旋转轴的反方向看,逆时针为正,顺时针为负。绕三个坐标轴旋转的变换如下: a) 绕 X 轴逆时针旋转 α 角

Page 36: 机械 CAD/CAM 技术

36

b) 绕 Y 轴逆时针旋转 β 角

c) 绕 Z 轴逆时针旋转 γ 角

Page 37: 机械 CAD/CAM 技术

37

5. 镜象变换镜象变换是对特定的平面进行变换。a) 对 XOY 平面的镜象变换

Page 38: 机械 CAD/CAM 技术

38

b) 对 YOZ 平面的镜象变换

c) 对 XOZ 平面的镜象变换

Page 39: 机械 CAD/CAM 技术

39

第三节 复合变换 与二维变换一样,通过对三维基本变换矩阵的组合,可以实现对三维物体的复合变换。下面我们以轴测图,三视图和透视图为例,说明三维变换的复合变换。

1 .正轴测图 如图所示,正轴测图投影图是将物体绕 Y 轴顺时针旋转β 角,再绕 X 轴逆时针旋转 α 角然后向 V 面投影而得到的,变换矩阵为:

Page 40: 机械 CAD/CAM 技术

40

Page 41: 机械 CAD/CAM 技术

41

2 。三视图1 )主视图 主视图是沿着 Z 向向 V 面投影的视图,如图 b 所示,它是将空间物体沿 Z 向压缩而得,因此需要将物体的坐标乘压缩矩阵。

Page 42: 机械 CAD/CAM 技术

42

2) 俯视图 俯视图是将空间物体先沿 X 向压缩,然后绕 Y 轴顺时针旋转 90 度,为了与主视图间保持一定的距离,最后沿 X 的负向平移 M 。组合矩阵为:

Page 43: 机械 CAD/CAM 技术

43

3 )左视图 左视图是将空间物体先沿 Y 向压缩,然后绕 X 轴逆时针旋转 90 度,为了与主视图间保持一定的距离,最后沿 Y 的负向平移 M 。组合矩阵为:

Page 44: 机械 CAD/CAM 技术

44

3 .透视图 透视图是一种与人的视觉观察物体比较一致的三维图形,它是采用中心投影法绘制 透视投影从一个视点透过一个平面观察物体,其视线是从视点出发,视线是不平行的。视线与画面相截交得到的图形就是透视图。任何一束不平行于投影面的平行线的透视投影将汇聚在一点,称之为灭点,在坐标轴上的灭点称为主灭点。透视投影按照主灭点的个数分为一点透视、二点透视和三点透视。下图为一点透视和两点透视的示意图。

单位立方体的一点透视和两点透视

Page 45: 机械 CAD/CAM 技术

45

当变换矩阵最后一列不为零时,即可产生透视效果。其变换为:

以上变换仍是三维空间到三维空间的透视变换。当 P 、 Q 、R 三个元素中,只有一个元素不为零时,可以得到一点透视;当只有一个元素为零时为两点透视;当均不为零时,为三点透视。

Page 46: 机械 CAD/CAM 技术

46

第四节 窗视变换与裁剪开窗口 : 利用显示屏幕按人们的意愿选取和放大一部分画面的方法称为开窗口裁剪 : 对不感兴趣的画面不予显示的技术称为剪取,也叫裁剪

1 .用户坐标系 即直角坐标系,它是用户在确定定义一个图形时,用来描述图形中各元素的位置、形状和大小的坐标系。2 .设备坐标系 设备坐标系是用户配备的硬件设备的坐标系,如显示器,绘图机等。例如显示器的原点在屏幕的左上角,X轴正向向右,Y轴的正向向下

一、常用的坐标系

Page 47: 机械 CAD/CAM 技术

47

1 .窗视变换 在用户坐标系中开用户窗口,凡是落在该窗口内的图形信息都将在图形设备上以设备坐标的形式在视图区中满屏输出。由于用户窗口和视图区是在不同的坐标系中定义的,所以要把用户窗口内的图形信息拿到视图区去输出之前,必须进行坐标变换。既窗视变换2 .用户窗口 一般设定为一个矩形区域,并可以用该矩形域的左下角 (Xwl ,Ywl) 和右上角 (Xwr , Ywr) 的坐标来定义。3 .视图区: 是用户在屏幕上定义的一个小于或等于屏幕的区域。视图区是用设备坐标系来定义的,通常也设定为矩形。同样可以用该矩形的左下角点 (Xsl,Ysl) 和右上角点 (Xsr , Ysr) 的坐标来定义。

二、窗视变换

Page 48: 机械 CAD/CAM 技术

48

如图所示,假如在用户坐标系中定义的物理窗口的左下角点的坐标为 (Xwl , Ywl) 和右上角点的坐标为 (Xwr , Ywr) ,在设备坐标系下定义的视图区的左下角和右上角坐标分别为 (Xsl ,Ysl) 和 (Xsr , Ysr) 。

Page 49: 机械 CAD/CAM 技术

49

4 .变换公式 根椐窗口与视口的相似对应关系,由图可以看出。

所以用户窗口内一点W (Xw , Yw) 要变换到视图区中对应的一点S (Xs , Ys) 时,按下式进行变换。

Page 50: 机械 CAD/CAM 技术

50

1 .裁剪: 在用户坐标系中开用户窗口,在窗口区域内定义的图形以适当的比例输出,而窗口外的图形在输出时裁剪掉。2 .裁剪的原理

三、裁剪

Page 51: 机械 CAD/CAM 技术

51

3 .剪取方法: 目前常用的剪取方法有:矢量剪取法、编码裁剪法、中点分割裁剪法等。这里介绍编码裁剪法。4 .编码裁剪法 1 )点的位置描述 用四位二进制编码描述点的位置,四位编码分别代表点的位置和窗口边界的上、下、左、右关系。

第一位--表示点在窗口的上方,在为 1 否则为 0 ;第二位--表示点在窗口的下方,在为 1 否则为 0 ;第三位--表示点在窗口的右方,在为 1 否则为 0 ;第四位--表示点在窗口的左方,在为 1 否则为 0 ;若点在窗口内,则四位编码为 0000

Page 52: 机械 CAD/CAM 技术

52

2 )剪裁判断 用规则判断每条线段是否可见,是否需要裁减。 ( 1 )两端点编码均为 0000 ,则该线段可见。 ( 2 )两端点编码不全为 0000 ,则将两端点编码逻辑相与,观察结果,若: 结果不为 0000 ,则该线段不可见。 结果为 0000 ,则为不确定线段,可能有一部分可见或完全不可见。3 )求交运算 若判断线段为不确定线段,则要进一步判断该线段与窗口的交点。逐一计算线段与四个边界的交点,在比较该交点是否在窗口范围内,若不在范围内,即可以确定该线段为不可见线段,否则有部分可见。

Page 53: 机械 CAD/CAM 技术

53

Page 54: 机械 CAD/CAM 技术

54

第五节 隐藏线与隐藏面的处理

1. 问题的提出 经三维坐标变换画出的图形有不确定性 , 如下图所示 :

2. 隐藏线的消隐处理 要画出确定的、立体感很强的三维图形,就必须将那些

被不透明的面和物体所遮挡的线段或面移去,这就是所谓的隐藏线或隐藏面的消隐处理。

Page 55: 机械 CAD/CAM 技术

55

3. 消隐算法 消隐处理的具体实现要求适当的数据结构和算法以及大

量的运算。在 60 年代,消隐问题曾被认为是计算机图形学中的几大难题之一。到目前为止,虽然已有数十种算法被提出来了,但是由于物体的形状、大小、相对位置等因素千变万化,因此至今它仍吸引人们作出不懈的努力去探索更好的算法。

目前的主要研究工作是围绕着算法正确、节约内存空间及加快运算速度等目标进行。

Page 56: 机械 CAD/CAM 技术

56

1 .概念 将组成任何一个二维图形的线条逐一绘出,它只取决于线条的端点坐标,不分先后,没有约束 2 .特点 比较简单,适应面也广,但绘图工作量大、效率低,容易出错,尤其是不能满足系列化产品图形的设计要求,生成的图形无法通过尺寸参数加以修正。图形重用率低。 3 .绘图方法 1 )静态的自动绘图方式:编制程序,成批绘制图线,程序一经确 定,所绘图形也就确定了,若要修改图形,只有修改程序,这是一种程序控制的。 2 )交互式绘图软件系统:把计算机屏幕当作图板,通过鼠标或键盘点取屏幕上的菜单,按照人机对话方式生成图形, AutoCAD 绘图软件就属于这种方式。

第六节 图形生成方法一、轮廓线法

Page 57: 机械 CAD/CAM 技术

57

1 .概念 建立图形与尺寸参数的约束关系,每个可变的尺寸参数用变量表示,并赋予一个缺省值。绘图时,修改不同的尺寸参数即可得到不同规格的图形。 2 .特点 简单、可靠、绘图速度快,但不适于约束关系不定的、结构可能会经常变化的新产品的设计,通常用于建立已定型系列化产品的图形库。 3 .绘图方法 1 )程序绘图 程序绘图需将参数代入程序或在程序 运行初期输入其中 ;交互绘图则先将赋有缺省值的参数图以图形文件形式存入系统,使用时 调入,再以人机对话方式逐一改变参数。 2 )交互绘图

二、参数化法

Page 58: 机械 CAD/CAM 技术

58

1 .概念 将各种常用的、带有某种特定专业含义的图形元素存储建库,设计绘图时,根据需要调用合适的图形元素加以拼合。2 .举例 如图所示,图( a )是原图,可以看出轴类零件是由几个基本的图形元素组成,将这些基本的图形元素做成子程序。调用不同的图形元素的子程序,即可组成不同类型的轴件。

三、图形元素拼合法

Page 59: 机械 CAD/CAM 技术

59

3 .特点 这种方法可用于新产品的设计和绘制,图形元素的定义和建库都是针对本单位产品形状特征的,很难建立一个包罗万象的、通用的图形元素库。图形元素拼合法要以参数化法为基础,每一个图形元素实际上就是一个小参数化图形。4 .绘图方法 图形元素拼合法既可以交互方式通过屏幕菜单拾取选项加以拼合,也可以通过在总控程序中选择调用各图形元素子程序实现操作。

Page 60: 机械 CAD/CAM 技术

60

1 .概念 是一种交互式的变量设计方法。首先按设计者的意图,先将草图快速勾画于屏幕之上,然后根据产品结构形状需要,为草图建立尺寸和形位约束。草图就戏法般受到这种约束的驱动而变得横平竖直起来,尺寸大小也一一对应。2 .特点 没有了繁琐的几何坐标点的提取和计算,保留了图形所需的矢量,尺寸绘图质量好、效率高 ;它使设计者不再拘泥于一些绘图细节,而把精力集中在该结构是否能满足功能要求上,支持快速的概念设计,怎么构思就怎么画,所想即所见,绘图和设计过程形象、直观。

四.尺寸驱动法

Page 61: 机械 CAD/CAM 技术

61

1 .概念 利用三维几何建模软件系统中提供的二维图投影功能实现二维图的绘制,再加上一些必要的修改,补充好尺寸标注、公差和技术要求。2 .特点 设计直观,二维绘图工作量大大减小。另外,因为二维图是三维实体投影而来,二者之间有着一对一的映射关系,故对二维图中尺寸变量加以修改后,能直接反馈到三维实体,三维实体也随之改变。

五.三维实体投影法

Page 62: 机械 CAD/CAM 技术

62