3 - 电气CAD技术
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3) 逆变换 [x ' y'逆 z'] 与上述变换相反的变换称为逆变换,平移变换 的 变换 [x y z] 就是把移回原处
0 0 1 0 1 0 [x y z 1 ] [x ' y ' z '1 ] 0 0 1 tx ty tz
0 0 0 1
为了编出画阴影线的子程序,需要做下列几项事情:
开始
输入已知参数 计算阴影斜率及截距增量 计算每条线段对应的截距范围 计算整个阴影线范围
从阴影线最大截距值开始
阴影线截距<最大范围值? Y
返回
阴影线截距在线段范围内? Y 轮廓线与阴影平行?
N 计算阴影与轮廓线的交点 对交点进行排序 绘制阴影线
计算下一条阴影线
x acos 2 x 1 p 2 : y asin 2 y 1
xi x a cos[ ( i 2 ) ] i 1 i=2,3,4,…,n p i: y y a sin[ ( i 2 ) ] i i 1
(1)把旋转中心P(m,n)平移到坐标原点(T1); (2)绕原点进行旋转变换(T2); (3)将所得结果再平移,回复到原旋转中心位置(T3)。T1,T2,T3为变 换矩阵,可将三个矩阵级联成一个单一矩阵 1 00 cos sin 0 100 T T T T 0 1 0 sin cos 0 0 1 0 1 2 3 m n1 0 1 m n1 0
对x
轴旋转的逆变换是用
供替
。
3.4 图形编辑处理
3.4.1 矩形窗口的线段裁剪 矩形窗口的线段裁剪是以矩形为裁剪窗口,凡线段位于窗口域内的为 可见线段,而把位于窗口域外的线段裁剪掉。 Xmin ≤ x ≤Xmax Ymin ≤ y ≤Ymax
D
B A C Xmin,Ymax B' A' C' (b)线段的裁剪
=
cos sin 0 sin cos 0 m m cos n sin n m sin n cos 1
3.3.3 三维变换 三维变换的实质是将齐次坐标点 [x y z 1 ] [x' y' z'1 ] 次坐标点 。 1) 平移变换 变换公式为 1 0 0 0
1 1 2 2
例:
' A 1 0 20 A B 20 2 0 ' 40 0 1 B 41 C 2 1 C '
C (2,1) C'
A (1,0)
(2,0) B
0 1 0 0 x [x y z 1 ' y' z ' 1 ] 0 0 1 0 t t t 1 x y z
变换成新的齐
其中 2) 绕坐标轴旋转 量。
tx , t y , tz
x ,y ,z
分别是在
方向上的平移分
1 0 0 0 0 cos sin 0 x ' y ' z '1 [ x y z1 ] 0 sin cos 0 0 0 0 1
开 始 Y 两端点在窗口内? N Y 记录站点特性
一端点在端口内?
N 线段与窗口求交 连接可见线段
结 束
3.4.2 多边形区域的填充 填充是指以一组相互平行的直线段把多边形的内部区域填满。 (1)确定定义图形轮廓的数据结构; (2)确定定义阴影线的数学模型,包括范围与数量; (3)确定阴影线与图形轮廓交点的计算方法; (4)确定交点排序和控制绘图动作的算法。
2.绕
y轴正向旋转
度
cos 0 x 'y ' z '1 [ xyz1 ] sin 0
3.绕
0 sin 1 0 0 cos 0 0
0 0 0 1
z轴正向旋转
度
sin 0 0 cos sin cos 0 0 x 'y ' z '1 [ x y z1 ] 0 0 1 0 0 0 0 1
X ', Y ' [ XY ] P点绕原点旋转 角 sin cos cos sin
sin cos T sin cos
Y
P'(X',Y') P(X,Y)
r
r
X
5) 平移变换 图形上任意一点沿X方向移动1,沿Y方向移动m,变换公式为: x' x 1 ' y y m 为使该变换用变换矩阵表示,引入齐次坐标概念。 [x, y, h] [x /h , y/h ] 定义:若 h0 ,则三元组 是二维空 ( x, y ) (x, y, 1 ) 间中点 的齐次坐标。令 h=1,则可用 表示坐标点 。 平移变换可用矩阵乘法表示为: 1 0 0
3.2
基本绘图算法
3.2.1 椭圆图形绘制算法 椭圆方程
x y 2 1 2 a b
2
2
写 成
b 2 2 y a x a b 2 2 y a x a
流程图及所绘图形见图3.2。
开 始
输入椭圆参数A,B,N 计算步长 从X=-A~A画上半椭圆 从X=A~-A画下半椭圆 结 束 (a)椭圆绘制框图 a=8,b=6 (b) 椭圆图形 Y
三者之间关系见图3.1所示。
Y Hw 用户坐标空间 Xw,Yw 1.0 规格化坐标空间 Xn,Yn (0,0) X Xb,Yb 设备坐标空间 Y
(XLw,Ybw)
X Ww
(0,0)
1.0
用户坐标中一点(XW,YW)变换为规格化坐标系中的点(Xn,Yn)时的表 达式: Xn=(Xw-XLw)/Ww 式中:Ww,Hw用户绘图定义的范围 Yn=(Yw-Ybw)/Hw XLw,Ybw为用户坐标系的原点坐标。 用户坐标系变换到屏幕坐标系时有: Xa=639×Xn=639·Xw/Ww Ya=479×Yn=479·Yw/Hw 屏幕坐标原点在左上角,可由下列变换将坐标原点转换到左下角。 Xb=639·Xw/Ww Yb=479·(1-Yw/Hw) 若用户绘图范围为Ww=639,Hw=479,则可简化上式 Xb=Xw Yb=479-Yw
X
说明:(1)本例中A、B为长、短半轴,N为绘图步数; (2)总是用直线段趋近曲线,故须考虑逼近精度; (3)应按规定范围设计要求的绘图动作。
3.2.2 正多边形图形的绘制算法 已知正多形的一个角点坐标( X1, Y),过该点的一条边的方向角α ,及正多形的边数n和边长a,则可唯一确定一正多边形,其数据模型是 确定各顶点的坐标计算式。 设 为正多形的外角, ,则顶点 2/ n 坐标算式:
3.6
CAD中的交互处理技术
CAD系统必须允许用户动态干预设计过程,操作由用户接口管理系统完 成。
3.6.1 交互接口的形式 常用的面向应用程序的接口形式有:子程序包、专用语言和交互命令三 种。 1) 子程序包 选择一种合适的高级程序语言为主语言,扩展一系列的子程序或函数, 以实现有关的设计分析和图形处理。 2) 专用语言 常见的有解释执行和编译执行两种,设计分析大多采用子程序调用形式 ,图形设计普遍采用交互命令的形式。
图3.5是常见的三种对称变换示意图。
Y
X
图3.5 对称变换
3) 错切变换
Y
X
1 0 T 沿 X 向的错切 1 1
Y
X
1 1 T Y 向的错切 沿 0 1
图3.6 错切变换
4) 旋转变换 图形上任意一点绕原点旋转 角,一般规定逆时针方向为正,顺 时针方向为负。旋转变换矩阵T由图3.7推导出:
3.1.2 常用图形处理子程序 (1)基本子程序:设备初始化子程序、设备驱动子程序、设备 控制子程序以及画点、画线子程序等。 (2)功能子程序:画园弧、椭圆、多边形、曲线及图形变换子 程序。这部分子程序不依赖于硬件设备,具有通用性。 (3)应用子程序:专业性较强的子程序,如电气元件图,开关 柜图、电气设备和布置图等。
3.5
图形软件的标准化
1) 图形软件标准化的意义 1.可自由选择软硬件组合; 2.适应性强; 3.便于数据交换。 2) 图形核心系统(GKS) GKS(Graphics Kernel System)是最早颁布的国际图形标准,GKS是一 种子程序软件包,它描述应用程序和图形输入输出设备的接口。 GKS独立于设备和各种高级语言,方便不同图形系统之间移植。 3) 基本图形交换规范(IGES) 基本图形交换规范(Initial Graphics Exchange Specification,简 称IGES)是1980年由美国国家标准局(NBS)主持,波音公司和通用电气公 司参加编制的。IGES为解决不同CAD系统间数据传送,于1981年成为ANSI标 准。
3) 交互命令 交互反映了人与计算机程序间传递信息的形式。 (1) 用户接口模型 接口要求:用户要求模型尽量接近现实,是非形式化的;开发者要求 模型具有严格的形式化描述,以便于实现。如图3.12所示。
X
A'
B' X
2) 对称变换 图形变换前后对称于某一特定直线(如坐标轴)或稳定的点(如坐 标原点)。 1 0 变换矩阵T= 0 1 相对X轴对称变换 变换矩阵T= 变换矩阵T=
1 0 0 1
1 0 0 1
相对Y轴对称变换 相对原点的对称变换
[x ' y' 1 ] [x y1 ] 0 1 1 0 m 1
b 0 a 很显然,变换矩阵 T c 0 d 0 0 1
适合于以
上讨论的其他几何变换。
3.3.2 二维复合变换 图形平面上任意一点P(m,n)旋转 :
角的旋转变换,其变换过程分解为
Xmin,Ymax (a)线段与裁剪窗口
1) 直线裁剪法的约定 (1)矩形裁剪窗口由其有效边界组成,且位置确定; (2)裁剪线段为有限线段,已知两端点坐标值。 (3)两端点均在窗口域外,但与窗口边界有两个交点(如线段C);
2) 裁剪线段分类 裁剪线段可以分四类: (1)两端点在窗口域内(如线段A); (2)一端点在窗口域内,另一端点在窗口域外(如线段B); (4)两端点均在窗口域外,与窗口边界无交点(如线段D)。 3) 算法框图
第三章
电气CAD绘图基础及交互处理技术
主要内容:CAD中绘图基础、基本图形处理、交互式的图 形操作,以高级语言绘图为例介绍有关的基本图形处理方 法。
3.1
微机绘图的基本方法及图形子程序
3.1.1 微机绘图的基本方式及坐标系 1) 微机绘图的基本方式 图形均由基本图形元素组成。 基本图素有 点、线、圆、弧、字符。 子图——由图素组成的某些图形符号,是图形交换、存储操作的对象。 绘图方式主要有矢量法和像点法。 矢量法:任何曲线都是由直线逼近。 像点法:主要用于光栅扫描显示器中,像素点亮便形成了曲线轮廓。 2)图形坐标系 (1)用户坐标系:用户原始使用的坐标系。 (2)设备坐标系:与具体设备有关的坐标系,一般是二维。 ( 3 )规格化坐标系:与设备无关的图形系统,通常取无量纲长度 单位。
……
p 1 :(x 1y 1)
3.3
图形的几何变换
图形变换是计算机图形处理的基础,矩阵运算是实现图形变换的有效方 法。 3.3.1 二维基本变换 X Y 矩阵[X,Y]表示点的坐标,称为坐标矩阵。用二行二列矩阵 X Y 表示一直线,平面图由许多直线段组成,多行两列矩阵表示。 若将点的坐标矩阵乘以一个二行二列方阵可得到一个新的坐标 矩阵[X1,Y1],这种二行二列方阵称为变换矩阵,这种过程称作几何变 换。 1)比例变换 三角形ABC变换为A'B'C'。