计算机辅助设计(CAD)_第1页
计算机辅助设计(CAD)_第2页
计算机辅助设计(CAD)_第3页
计算机辅助设计(CAD)_第4页
计算机辅助设计(CAD)_第5页
已阅读5页,还剩88页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1第2章计算机辅助设计(CAD)2.1CAD概述2.2CAD系统2.3CAD系统的图形处理2.4工程数据的处理2.5数据库系统及其应用计算机辅助设计(CAD)全文共93页,当前为第1页。2案例CAD的应用

英国的三叉戟飞机比美国的波音747飞机早开工,却晚一年完成,其原因是美国波音747设计采用了CAD技术。美国GM公司汽车设计中应用CAD技术,使新型汽车的设计周期由5年缩短为3年,新产品的可信度由20%提高到60%。计算机辅助设计(CAD)全文共93页,当前为第2页。32.1CAD概述1.是一种(工程或产品)设计方法。2.是信息技术(计算机、网络通信、数据管理)和设计技术融合的产物。3.是先进制造技术群中的一项主体关键技术。

计算机辅助设计是一种利用计算机硬件、软件系统辅助设计者对产品进行规划、分析、计算、综合、模拟、评价、绘图和编写技术文件等设计活动的总称。计算机辅助设计(CAD)全文共93页,当前为第3页。42.1.1CAD技术的起源、发展和应用情况1.1950年,MIT研制WhirlwindⅠ;1958年Calcomp研制滚筒式绘图机,Cerber研制平板绘图机。2.萨瑟兰德1962年发表“SKETC-PAD—人机对话系统”论文,1963年实现了绘图交互技术。1964年IBM公司推出商品化绘图设备。3.20世纪70年代,廉价硬件设备使CAD进入实用阶段。80年代后,形成分布式工作站系统Apollo、Sun等,目前各种专业软件层出不穷。计算机辅助设计(CAD)全文共93页,当前为第4页。52.1.2CAD技术的内涵1.基础技术

1)图形处理技术计算机辅助设计(CAD)全文共93页,当前为第5页。62)工程分析技术,如有限元分析、优化设计等3)数据管理与交换技术,如数据库管理、PDM等4)文档处理技术5)软件设计技术,如接口界面设计、软件工具、软件工程规范等。计算机辅助设计(CAD)全文共93页,当前为第6页。72.现代CAD技术的概念1)面向设计自动化的技术2)包含设计理论和方法、设计环境及设计工具3)集成化、网络化和智能化是其追求的功能目标4)服务于先进制造技术计算机辅助设计(CAD)全文共93页,当前为第7页。83.现代CAD技术的研究内容1)现代设计理论与方法学

并行设计、协同设计、虚拟设计、大规模定制设计2)与设计环境相关的技术

支持技术(B/S和C/S)、管理技术3)与设计工具相关的技术

产品数字化定义及建模、集成的CAX和DFX工具4)智能技术计算机辅助设计(CAD)全文共93页,当前为第8页。92.2CAD系统结构与功能

CAD系统的体系结构硬件平台:网络,计算机,绘图机,打印机...操作系统:Windows3.x/95/98/NT/2000/xp,UNIX网络协议:TCP/IP,SPX/IPX数据库系统:Oracle,Sybase,Forpro…CAD工具软件:AutoCAD,Solidworks,Pro/E...CAD工程应用软件...硬件系统系统软件支撑软件应用软件计算机辅助设计(CAD)全文共93页,当前为第9页。10

CAD系统的硬件一般由计算机主机、外存储器、图形输入设备、图形输出设备和网络设备组成。2.2.1CAD系统的硬件外存储器硬盘、软盘、光盘、磁带计算机主机中央处理器内存储器通信设备串行接口、网络接口输入设备图形终端鼠标、键盘数字化仪扫描仪图形输入板……

输出设备图形终端绘图机打印机……计算机辅助设计(CAD)全文共93页,当前为第10页。11(系统软件、应用软件)1.CAD系统软件

概念:系统软件指操作系统及语言等,它们不是用户的具体应用程序,而是着眼于计算机资源的有效管理,用户任务的有效完成,以及操作的方便,目的是要构成一个良好的软件工作环境,供应用程序的开发使用。2.2.3CAD系统的软件计算机辅助设计(CAD)全文共93页,当前为第11页。12系统软件包括以下软件:操作系统(OS:OperatingSystem)

具有五方面的管理功能目前最常见的是多用户、多任务操作系统,UNIX,Windows。

计算机语言

低级语言(汇编语言)和高级语言。窗口系统

从直观来看,窗口系统是由窗口、菜单、按钮等图形对象组成的一个图形用户界面,用户的操作就是对这些图形对象的操作。计算机辅助设计(CAD)全文共93页,当前为第12页。13网络通信及管理软件

现在CAD系统都是联网系统,用户能共享网内全部硬软件资源,可以使工作小组共同进行某个产品的辅助设计或开发同一软件系统。

数据库及数据库管理软件

数据库是以一定的组织方式存储在计算机中的相关的数据的集合。支持人们建立、使用和修改数据库中数据的软件称为数据库管理系统。计算机辅助设计(CAD)全文共93页,当前为第13页。142.CAD应用软件

基本图形资源软件

面向设备驱动的CGI,面向应用的图形程序包GKS

解决图形设计问题二、三维绘图软件,几何造型软件

解决工程分析与计算问题计算方法库,优化方法库,有限元分析及其前后置处理程序,机械系统动态分析软件,注塑模分析软件

解决文档写作与生成问题计算机辅助设计(CAD)全文共93页,当前为第14页。153.典型CAD软件简介1)AutoCAD

AutoCAD是当今最流行的二维绘图软件,它在二维绘图领域拥有广泛的用户群。AutoCAD有强大的二维功能,如绘图、编辑、剖面线和图案绘制、尺寸标注以及二次开发等功能,同时有部分三维功能。AutoCAD提供AutoLISP、ADS、ARX作为二次开发的工具。

机械、建筑、电子等领域AutoCAD得到广泛的应用计算机辅助设计(CAD)全文共93页,当前为第15页。162)Unigraphics(UG)

UG是从二维绘图、数控加工编程、曲面造型等功能发展起来的软件。UG是UnigraphicsSolutions公司拳头产品,该公司首次突破传统CAD/CAM模式,为用户提供一个全面的产品建模系统。在UG中,优越的参数化和变量化技术与传统的实体、线框和表面功能结合在一起,这一结合被实践证明是强有力的,并被大多数CAD/CAM软件厂商所采用。3)SolidEdge

(UnigraphicsSolutions)

SOLIDEDGE是真正Windows软件。SOLIDEDGE是基于参数和特征实体造型的新一代机械设计CAD系统,它是为设计人员专门开发的,易于理解和操作的实体造型系统。

计算机辅助设计(CAD)全文共93页,当前为第16页。174)SolidWorks

SolidWorks是基于Windows平台的全参数化特征造型软件,它可以十分方便地实现复杂的三维零件实体造型、复杂装配和生成工程图。图形界面友好,用户上手快。该软件可以应用于以规则几何形体为主的机械产品设计及生产准备工作中,其价位适中。

5)ANSYS

ANSYS是最大的有限元分析软件公司之一的ANSYS公司开发的,它能与多数CAD软件接口,实现数据的共享和交换,是经典的CAE产品。它包括结构分析,流体动力学分析,电磁场分析等具有灵敏度分析及优化分析的能力。计算机辅助设计(CAD)全文共93页,当前为第17页。186)Pro/Engineer

Pro/Engineer系统是美国参数技术公司(ParametricTechnologyCorporation,简称PTC)产品。PTC公司提出单一数据库、参数化、基于特征、全相关的概念改变了机械CAD/CAE/CAM的传统观念,这种全新的概念已成为当今世界机械CAD/CAE/CAM领域的新标准。可以实现所谓的并行工程。

Pro/Engineer系统主要功能如下:

(1)真正全相关性,任何修改都会自动反映到所有相关地方。

(2)具有真正管理并发进程、实现并行工程的能力。

(3)具有强大的装配功能,能够始终保持设计者的设计意图。

(4)容易使用,可以极大地提高设计效率。

计算机辅助设计(CAD)全文共93页,当前为第18页。197)CATIA

CATIA是由法国DassaultSystem公司开发,它的集成解决方案覆盖所有的产品设计与制造领域,CATIA提供了强大的曲面与曲线造型能力。它是航空航天工业的主流软件。一汽集团,上海大众,北京吉普在内的许多汽车公司都已选用该软件。计算机辅助设计(CAD)全文共93页,当前为第19页。208.CAXA电子图板和CAXA-ME制造工程师

CAXA电子图板和CAXA-ME制造工程师软件的开发与销售单位是北京北航海尔软件有限公司。

CAXA电子图板是一套高效、方便、智能化的通用中文设计绘图软件,可帮助设计人员进行零件图、装配图、工艺图表、平面包装的设计,适合所有需要二维绘图的场合,使设计人员可以把精力集中在设计构思上,彻底甩掉图板,满足现代企业快速设计、绘图、信息电子化的要求。

CAXA-ME是面向机械制造业的自主开发的、中文界面、三维复杂形面CAD/CAM软件

计算机辅助设计(CAD)全文共93页,当前为第20页。219.

高华CAD

由北京高华计算机有限公司推出的CAD产品。高华CAD系列产品包括计算机辅助绘图支撑系统GHDrafting、机械设计及绘图系统GHMDS、工艺设计系统GHCAPP、三维几何造型系统GHGEMS、产品数据管理系统GHPDMS及自动数控编程系统GHCAM。其中GHMDS是基于参数化设计的CAD/CAE/CAM集成系统,它具有全程导航、图形绘制、明细表的处理、全约束参数化设计、参数化图素拼装、尺寸标注、标准件库、图像编辑等功能模块。

计算机辅助设计(CAD)全文共93页,当前为第21页。2210.金银花系统

金银花(Lonicera)系统是由广州红地技术有限公司开发的基于STEP标准的CAD/CAM系统。该软件主要应用于机械产品设计和制造中,它可以实现设计/制造一体化和自动化。机械设计平台MDA(MechanicalDesignAssistant)是金银花系列软件之一,是二维和三维一体化设计系统。计算机辅助设计(CAD)全文共93页,当前为第22页。2311.

开目CAD

开目CAD是开目集成技术公司开发的具有自主版权的基于微机平台的CAD和图纸管理软件,它面向工程实际,模拟人的设计绘图思路,操作简便,机械绘图效率比AutoCAD高得多。

计算机辅助设计(CAD)全文共93页,当前为第23页。242.2.3CAD系统的分类

从硬件角度将CAD系统划分为四类:1.主机系统(Mainframe-basedsystem)

该系统一般以大型机为主机,集中配备某些公用的外部设备,同时接出许多用户工作站及字符终端。

优点是主机功能强,能进行大信息量的作业,如大型分析计算、复杂模拟和管理等。缺点是当终端用户过多时,会使系统过载,响应速度变慢,而且一旦主机发生故障,整个系统就不能工作,此外价格昂贵。计算机辅助设计(CAD)全文共93页,当前为第24页。252.小型机系统(Minicomputer-basedsystem)

优点

是这种小型机大都具有32位字节,操作系统采用虚拟存储技术,成本低,体积小,便于操作使用。

缺点是系统比较封闭,也即开放性较差。20世纪80年代占据了主要的CAD市场。在80年代中期以后,小型机逐渐被工程工作站所代替。

这种系统与主机系统在形式上非常类似,只不过用小型机或超小型机代替主机,用户工作站数量较少,一般在4到6个。计算机辅助设计(CAD)全文共93页,当前为第25页。263.

工程工作站系统(Workstation-basedsystem)

工程工作站是具有高速的科学计算、丰富的图形处理、灵活的窗口及网络管理功能的交互式计算机系统。这种系统的特点是:一个用户用一台计算机,并且具有联网功能。这也是它与具有分时系统的超级小型机的不同之处。

系统设计遵循这样一种思想:一个工程师使用一台计算机;而且还能使用所有的计算机。前半句意味着摒弃了多用户分时系统的结构,后半句意味着采用网络技术。

计算机辅助设计(CAD)全文共93页,当前为第26页。27网络分布CAD系统

应用计算机技术和通信技术,将分布于各地的各类计算机以网络形式连接起来进行产品的设计工作。CAD网络示例TCP/IPServerClient文件服务器数据库服务器微机工作站...计算机辅助设计(CAD)全文共93页,当前为第27页。28

优点是工作站本身具有强大的分布式计算功能,能够支持复杂的CAD作业,能支持多任务进程。其性能还是优于微机系统,它为各种功能强大的CAD/CAM软件及复杂应用提供了坚实的平台。

缺点是系统所需要的软、硬件投资比较大。

SUN、SGI、HP、DEC和IBM等大型计算机公司广泛采用工程工作站系统,因此工程工作站在国外CAD系统中占有主导地位。计算机辅助设计(CAD)全文共93页,当前为第28页。294.微型机系统(Microcomputer-basedsystem)微机系统在中小型企业中得到了广泛应用。一般每台微机只配备一台图形终端,以保证对操作命令的快速响应。近年来微机系统发展非常迅速。(1)32位字节的微机在速度、精度、内外存容量等方面已能满足CAD应用的要求(2)微机上的各种软件,从图形软件、工程分析软件及各种应用软件,满足了用户的大部分要求。(3)现代网络技术能将许多微机及公共外设边在一起,做到了网内资源共享。

计算机辅助设计(CAD)全文共93页,当前为第29页。30微机CAD系统

是以一台微机为主的单用户系统。

微机CAD硬件系统主机操作系统显示设备:图形显示器输入设备外存储器输出设备通讯接口计算机辅助设计(CAD)全文共93页,当前为第30页。312.2.4CAD系统(构成)功能

产品设计制造的数值计算和数据处理程序包、图形信息交换和处理显示程序包、存储和管理设计制造信息的工程数据库。1.硬件应具备的基本功能

计算、存储、输入输出、交互

2.软件应具备的基本功能

产品几何造型的功能(线框、曲面与实体造型)、2D和3D图形处理功能、有限元分析功能、优化设计过程、数据库管理功能等计算机辅助设计(CAD)全文共93页,当前为第31页。322.3CAD系统的图形处理2.3.1图形处理基础1.图形的图素及坐标系1)图形的基本图素(屏幕显示和拷贝)(1)直线线段(矢量图)(2)像素(位图)计算机辅助设计(CAD)全文共93页,当前为第32页。332)坐标系(笛卡尔)统(定义点(图形的最基本元素)的位置)(1)世界坐标系(WC,worldcoordinatesystem)

世界坐标系是一个固定不变的坐标系,其原点和坐标轴的方向始终固定不变。世界坐标系有时又被称为绝对坐标系或用户坐标系,它是用作定义所有对象和其他坐标系的基础。计算机辅助设计(CAD)全文共93页,当前为第33页。34(2)设备坐标系(DC,devicecoordinatesystem)

是一个二维平面坐标系,度量单位是步长(绘图仪)或像素(显示器),定义域是整数域且有界,显示器的分辨率就是其设备坐标的界限。(3)规格化设备坐标系(NDC,normalizedDC)

图形在用户坐标系定义,输出时定义在设备坐标系。不同设备具有不同的坐标系和坐标范围。为增加应用程序的可移植性,也为便于图形处理,因此引入与设备无关的规格化设备坐标系,采用无量纲单位坐标系范围值。计算机辅助设计(CAD)全文共93页,当前为第34页。352.二维图形变换

二维图形可以用代表图形的特征点的集合—二维数组(可写成二维矩阵的形式)表示。

图形的几何变换(旋转、平移和缩放等)即是对该矩阵进行有意义的矩阵乘法(X·T)运算而得。1)基本变换(对于点(x,y))变换矩阵变换基准点为坐标原点计算机辅助设计(CAD)全文共93页,当前为第35页。36(1)比例变换

b=0,c=0(2)压缩变换计算机辅助设计(CAD)全文共93页,当前为第36页。374)对称变换:图形以坐标原点为中心对称于坐标原点或某一条轴线的变换。对称变换后的图形是原图形关于某一轴线或原点的镜像,也称为反向变换或镜像变换。(a)

原点对称0

xy(b)x轴对称0

xy(c)y轴对称0

xy计算机辅助设计(CAD)全文共93页,当前为第37页。38(d)x=y对称0

xyy

=xY(e)x=-y对称0

xyy=-x(4)旋转变换y’y0

x’

xA’AθαR计算机辅助设计(CAD)全文共93页,当前为第38页。39A=[3010;6010;6030];T=[cos(pi/6)sin(pi/6);-sin(pi/6)cos(pi/6)];AA=A*T例2-1将三角形ABC(3010;6010;6030)绕坐标原点逆时针旋转30º。ABC0xy计算机辅助设计(CAD)全文共93页,当前为第39页。40(5)错切变换(以单位转换矩阵为例)0x0x0xyyy(a)沿x方向

(b)沿y方向

(c)沿x=y方向b=0c=0计算机辅助设计(CAD)全文共93页,当前为第40页。41不能用直角坐标表示(6)齐次坐标与平移变换ABDCFE(xF,yF)F’A’B’E’C’D’如何表示F的坐标?图2-10图形变换中的无穷点返回计算机辅助设计(CAD)全文共93页,当前为第41页。42(x,y)表示成(X/H,Y/H)例(1,3)可以表示成(2/2,6/2)或(0.5/0.5,1.5/0.5)对同一个点,随H值的不同会有不同的坐标有序的三组数(Xi,Yi,Hi)称为第i个点的齐次坐标当H=1时,(X,Y,1)为点的规格化齐次坐标,即直角坐标。当H=0时,(X,Y,0)表示无穷点。这样就可将N维空间的点在N+1为空间表示。计算机辅助设计(CAD)全文共93页,当前为第42页。43这是一个线性变换,其中T为线性变换矩阵,它是二阶方阵。一个二维线性变换的一般形式也可以写成如下的代数式:x’=a·x+c·y+ly’=b·x+d·y+m转换为矩阵形式,就是:规格化否?计算机辅助设计(CAD)全文共93页,当前为第43页。44在不同高度水平面上绘的图直角坐标和齐次坐标两种表示方法,仅从图形上来看没有实质性差别:计算机辅助设计(CAD)全文共93页,当前为第44页。45为了将转换点表示为齐次坐标,引入3×3阶变换矩阵如令则其中l,m分别为x,y方向的平移量。计算机辅助设计(CAD)全文共93页,当前为第45页。46例2-2

将△ABC=[001;2001;10101]沿x方向平移10,沿y方向平移20,求变换后△ABC的坐标。解:三角形坐标矩阵平移矩阵求变换后的矩阵算法ABC*T计算机辅助设计(CAD)全文共93页,当前为第46页。472)二维图形的变换矩阵元素的分析úúúûùêêêëé=smlqdbpcaT比例、对称、旋转、错切(基本变换)平移变换透视变换全局比例变换正常化转41页计算机辅助设计(CAD)全文共93页,当前为第47页。483)二维图形的组合变换例2-3已知三角形点集矩阵为变换矩阵为求变换后的点集矩阵P’’正常化计算机辅助设计(CAD)全文共93页,当前为第48页。493.三维图形变换1)基本变换比例变换a、e、j分别为x、y、z方向的比例系数a、e、j>1时为放大a、e、j<1时为缩小a、e、j=1时为恒等变换s>1时为放大s<1时为缩小s=1时为恒等变换局部比例整体比例变换种类变换矩阵说明úúúúûùêêêêëé=1000000000000jeaTúúúúûùêêêêëé=sT000010000100001计算机辅助设计(CAD)全文共93页,当前为第49页。50按右手法则确定旋转角度θ

的方向,逆时针方向旋转为正,顺时针方向旋转为负变换种类变换矩阵说明旋转变换绕x轴旋转绕y轴旋转绕z轴旋转úúúúûùêêêêëé-=10000cossin00sincos00001qqqqTúúúúûùêêêêëé-=10000cos0sin00100sin0cosqqqqTúúúúûùêêêêëé=1000010000cossin00sincosqqqqT计算机辅助设计(CAD)全文共93页,当前为第50页。51平移错切l、m、n分别为沿x、y、z轴方向的平移量a、b、c、d、e、f、h、i、j

不全为零。若只有一个不为令,则得一基本错切,故沿三个坐标方向有6种基本错切。如d≠0为沿x轴方向错切且离开y轴;h≠0为沿x轴方向错切且离开z轴;其余4种,依此类推。平移变换错切变换变换种类变换矩阵说明úúúúûùêêêêëé=1nml000000000111Túúúúûùêêêêëé=1T00001ih0f1d0cb1计算机辅助设计(CAD)全文共93页,当前为第51页。52对称于xOy坐标面对称变换正投影变换透视变换úúúúûùêêêêëé=1000000000000-111Túúúúûùêêêêëé=10000000000001-11Túúúúûùêêêêëé=100000000000011-1Túúúúûùêêêêëé=1000000000p00111Túúúúûùêêêêëé=1000000q00000111Túúúúûùêêêêëé=1000r00000000111Túúúúûùêêêêëé=1000000000000011Túúúúûùêêêêëé=1000000000000110Túúúúûùêêêêëé=1000000000000101T对称于xOz坐标面对称于yOz坐标面向xOy投影沿x方向透视向yOz投影向xOz投影沿y方向透视沿z方向透视计算机辅助设计(CAD)全文共93页,当前为第52页。532.3.2图形的显示与输出处理2)组合变换(略)图形变换中,定义的图形全部显示。但在实际操作中(1)仅输出其中一部分,即某一细节图形放大后输出(2)将屏幕分成若干块,每一块用于显示不同的图形信息。图形的显示流程图形的世界坐标系三维变换投影对窗口区进行裁剪窗口区到视区的规格化变换视区从规格化坐标系到设备坐标系的变换图形设备上输出图形WCWCNDCDC计算机辅助设计(CAD)全文共93页,当前为第53页。541.视图区变换与窗口—视图区变换

用户坐标系中定义的确定显示内容的一个矩形区域

图形显示器中定义的一个用于输出所要显示的图形和文字的矩形区域

图形显示中,把窗口中的一点P’(x’,y’)变换到显示屏(含视区)上的一点P(x,y)计算机辅助设计(CAD)全文共93页,当前为第54页。551)视图区变换P’(x’,y’)A’(x’,y’)D’AAB’

C’(x’,y’)CC0x’y’yP(x,y)A

DBC0MxxMy计算机辅助设计(CAD)全文共93页,当前为第55页。562)窗口-视图区变换若将窗口中的图形显示在屏幕视区范围内,则视区决定了窗口内的图形在屏幕上显示的位置和大小

视区是一个有限的整数域,它应小于等于屏幕区域,而定义小于屏幕的视区是非常有用的,因为这样可以在同一屏幕上定义多个视区,用来同时显示不同的图形信息。计算机辅助设计(CAD)全文共93页,当前为第56页。57w(x’,y’)ww0’x’x’x’y’窗口lryt’yb’S(xs,ys)0

xl

xr

xy视图视图区ytyb点w映射到点S比例关系变后坐标化简系数简化公式计算机辅助设计(CAD)全文共93页,当前为第57页。58用矩阵表示2.图形的裁剪(消隐、浓淡处理的基础,还可进行形状处理)1)二维线段裁剪裁剪窗口采用裁剪算法:找出落在窗口内线段的起点和终点的坐标矢量裁剪法、编码裁剪法和中点裁剪法计算机辅助设计(CAD)全文共93页,当前为第58页。59编码裁剪法(Cohen-Sutherland算法)

由DanCohen和IvanSutherLand提出的,其思想:如果线段的两个端点都在裁剪窗口内部,那么整条线段就在窗口内,该线段完全可见;如果两个端点同时位于窗口某一边界的外面,那么整条线段在外面,不可见;对于非这两种情况的线段,求线段和窗口边界的交点,分线段为两部分,其中一部分完全在窗口外,不可见,舍弃之,考虑另一段(重复上面的判断过程)。计算机辅助设计(CAD)全文共93页,当前为第59页。60

为了能快速判断出线段与裁剪窗口的关系,采用四位数码来标识线段的端点与窗口区域的关系,所以Cohen-SutherLand算法又称为编码算法。每个区域有形如CtCbCrCl的编码。编码规则为:第4位为1表示线段端点位于窗口上侧,否则为0;第3位为1表示线段端点位于窗口下侧,否则为0;第2位为1表示线段端点位于窗口右侧,否则为0;第1位为1表示线段端点位于窗口左侧,否则为0.

000010011000101000010010010101000110裁剪区域xL

xRyTyBABCDEF计算机辅助设计(CAD)全文共93页,当前为第60页。61算法步骤1)裁剪一条线段时,先求出A、B所在的区号code1,code2,2)若code1=0且code2=0,则线段A、B在窗口内,应取之;3)若按位与运算code1&code2≠0,可判断线段完全在窗口外,可弃之。4)否则,按第三种情况处理。求出线段与窗口某边的交点,在交点处把线段一分为二,其中必有一段在窗口外,可弃之。再对另一段重复上述处理。5)在实现本算法时,不必把线段与每条窗口边界依次求交,只要按顺序检测到端点的编码不为0,才把线段与对应的窗口边界求交。计算机辅助设计(CAD)全文共93页,当前为第61页。62如何求交点首先判断裁剪线段与哪条边有交点:若编码&0001≠0,端点与左边界有交点;若编码&1000≠0,端点与上边界有交点;若编码&0010≠0,端点与右边界有交点;若编码&0100≠0,端点与下边界有交点;然后计算交点:已知直线(X1,Y1)(X2,Y2)与水平线Y=H的交点为与垂直线X=V的交点为计算机辅助设计(CAD)全文共93页,当前为第62页。63依次对每条线段p1p2作如下处理:1)对线段两端点p1,p2按各自所在的区域编码。p1和p2的编码分别记为:

C1(p1)={a1,b1,c1,d1},C2(p2)={a2,b2,c2,d2}(其中ai,bi,ci,di取值域为{1,0},i={1,2})2)if(ai=bi=ci=di=0则显示整条直线,取出下一条直线,返1);否则

if[(a1&a2)|(b1&b2)|(c1&c2)|(d1&d2)==1]则取出下一条直线,返1);否则3)if(d1|d2==1)则求直线与窗左边(x=XL)之交点,并删去交点以左部分;if(a1|a2==1)则求直线与窗上边(y=YT)之交点,并删去交点以上部分;if(c1|c2==1)则求直线与窗右边(x=XR)之交点,并删去交点以右部分;if(b1|b2==1)则求直线与窗下边(y=YB)之交点,并删去交点以下部分;4)返1);算法流程计算机辅助设计(CAD)全文共93页,当前为第63页。64#defineLEFT1#defineRIGHT2#defineBOTTOM4#defineTOP8算法实现encode(x,y,code)intx,y;int*code;{intc;c=0;if(x<XL)c=c|LEFT;elseif(x>XR)c=c|RIGHT;if(y<YB)c=c|BOTTOM;elseif(y>YT)c=c|TOP;*code=c;return;}计算机辅助设计(CAD)全文共93页,当前为第64页。65VoidCohenSutherlandLine(intx1,inty1,intx2,inty2,Rectangle*rect){intx,y;boolaccept,done;accept=

FALSE;done=

FALSE;intcode1,code2,code;encode(x1,y1,&code1);

encode(x2,y2,&code2);计算机辅助设计(CAD)全文共93页,当前为第65页。66do{if(code1==0&&code2==0)//完全可见

{accept=TRUE;done=TRUE;}elseif((code1&code2!=0))//显然不可见

done=TRUE;{x=float(rect->xmin);y=y1+(y2-y1)*(x-x1)/(x2-x1);}elseif((TOP&code)!=0){y=rect->ymax;x=x1+(x2-x1)*(y-y1)/(y2-y1);}elseif((RIGHT&code)!=0)else//进行求交测试

{code=code1;if(code1==0)code=code2;

if((LEFT&code)!=0)计算机辅助设计(CAD)全文共93页,当前为第66页。67{x=rect->xmax;y=y1+(y2-y1)*(x-x1)/(x2-x1);}elseif((BOTTOM&code)!=0){y=rect->ymin;x=x1+(x2-x1)*(y-y1)/(y2-y1);}

if(code==code1){x1=x;y1=y;encode(x,y,&code1);}else{x2=x; y2=y; encode(x,y,&code2); }

}//forelse进行求交测试

}while(!done)

if(accept)Line((int)x1,(int)y1,(int)x2,(int)y2);

}//forC-S-L程序计算机辅助设计(CAD)全文共93页,当前为第67页。68与二维直线裁剪算法一样,三维Cohen-Sutherland直线裁剪算法也采用端点编码方法来判断线段的可见性。三维裁剪中,按视见体的每一面把整个空间划分成27个子空间,每个子空间都用唯一编码来标识,采用六位编码,具体编码规则为:第1位为“1”表示端点位于视见体的左边,否则为0;第2位为“1”表示端点位于视见体的右边,否则为0;第3位为“1”表示端点位于视见体的下边,否则为0;第4位为“1”表示端点位于视见体的上边,否则为0;第5位为“1”表示端点位于视见体的前边,否则为0;第6位为“1”表示端点位于视见体的后边;否则为0;若一线段的两端点编码均为零,则此线段的两端点可见,此线段也可见。若线段两端点编码相与(AND)不为零,则该线段为完全不可见线段;否则该线段可能部分可见或完全不可见,此时需要计算视见体与线段交点,方可最后决定。2)

三维Cohen-Sutherland算法计算机辅助设计(CAD)全文共93页,当前为第68页。692.3.3真实感图形生成原理计算机生成真实感图形需解决的问题(1)场景造型—对景物外形的描述(2)投影变换(3)消隐处理(4)光照模型—模拟光在场景中的传播与分布(5)画面绘制—根据光照模型,计算画面光度与色度(6)绘图处理—透明、阴影、表面纹理(7)图形反混淆—消除细节失真计算机辅助设计(CAD)全文共93页,当前为第69页。70图形消隐的基本概念消隐算法的基本测试方法常用的消隐算法

下面图形代表哪一种情况呢???三维图形由于投影变换失去了深度信息,往往导致图形的二义性计算机辅助设计(CAD)全文共93页,当前为第70页。712.3.3.1消隐处理

要消除二义性,就必须在绘制时消除实际不可见的线和面,习惯上将这些隐藏线或隐藏面消除的过程称为消隐

当沿投影视线观察一个三维物体时,由于物体中各种表面或其它物体的遮挡,某些线段或面不可见,这些不可见的线段或面称为隐藏线或隐藏面

查找、确定并消除隐藏线和隐藏面的技术称为消隐技术

计算机辅助设计(CAD)全文共93页,当前为第71页。721)消隐处理的实质与算法选择(1)消隐处理显示的图形与三维空间至二维空间的投影方式有关。(2)消隐处理面对对象复杂。线、面、个体(3)消隐处理的实质是一种几何分类,在一定条件下,区分形体的可见与不可见部分。(4)几何分类的复杂性,导致计算机内部数据的复杂性。(5)为提高消隐处理算法的效率,要充分利用形体内部存在的在可见性问题上的区域相关性。(6)消隐处理可以分别在形体空间和图像空间进行。

消隐算法是面向特点对象的,要减少进行隐藏性判别的工作量。计算机辅助设计(CAD)全文共93页,当前为第72页。732.Roberts方法物体由若干个多面体组成。算法(1)对每个凸多面体,找出所有的朝前面,朝前面的边棱的集合作为潜在的可见棱。(2)再对这些潜在的可见棱,相对其它多面体依次进行遮挡测试。(3)确定互为贯穿物体的相贯线,并判别其可见性计算机辅助设计(CAD)全文共93页,当前为第73页。743.深度缓存算法深度缓冲器算法的基本思想:对于显示屏上每一点像素,记录下位于该像素内最靠近观测者的那个景物面的深度坐标,同时相应记录下用来显示该物景的颜色(灰度),那么所有记录下的这些像素对应的颜色就可以形成最后要输出的图形。计算机辅助设计(CAD)全文共93页,当前为第74页。752.3.3.2光照模型1.图形的光照处理技术

采用消隐技术消除了隐藏线和隐藏面后,图形没有了二义性问题,但要创造真实感图形需要光照处理技术。光照处理是绘制真实感图形所需的重要技术之一

光照处理方法是对真实世界的一种近似模拟

模拟光线照射在物体上,物体反映出来的感观效应,通过必要的算法实现实际物体在计算机上的虚拟计算机辅助设计(CAD)全文共93页,当前为第75页。76光照处理目的是希望光照射在物体上模拟眼睛看物体的效果

物体吸收某些波长的光,而反射或折射其它波长的光,则物体呈现某种颜色。从物体表面反射或折射出来的光的强度取决于光源的性质、物体的表面性质、周围环境、视点位置以及不同人对光的感觉差异等诸多因素。

对物体进行光照处理需要建立合适的光照模型,并通过显示算法将物体在显示器上显示出来。

光的亮度由光的强度决定,光的颜色由波长决定2.光照处理的基本原理计算机辅助设计(CAD)全文共93页,当前为第76页。77简单的光照模型

点光源的几何形状为一个点,位于空间的某个位置向周围所有方向上辐射等强度光在点光源的照射下,物体表面的不同部分亮度不同,亮度的大小依赖于它的朝向以及它与点光源之间的距离

光照处理模型常通过点光源照射物体说明:

光源发光照射在物体上,然后传递到人的眼里,实际上构成了一个光照系统

理想镜面反射L

N

P

R

V

一般光滑表面镜面反射L

N

P

R

L

N

P

R

粗糙表面镜面反射计算机辅助设计(CAD)全文共93页,当前为第77页。78漫反射

光线照射到表面粗糙、无光泽的物体上,物体表面表现为漫反射形式,即光线沿各不同方向都做相同的散射。

从各个角度观察,物体都有相同的亮度

计算机辅助设计(CAD)全文共93页,当前为第78页。79

光滑的物体表面(如金属、塑料)在点光源的照射下会形成一块特别亮的区域,即所谓的“高光”,它是物体表面对入射光进行镜面反射引起的

镜面反射遵循反射定律,反射光与入射光位于表面法向两侧。镜面反射的光强取决于入射光的角度、波长和反射表面的材料性质…镜面反射

计算机辅助设计(CAD)全文共93页,当前为第79页。80环境光

光线在场景中经过复杂的传播之后,形成弥漫于整个空间的光线,称为环境光(或泛光

)。环境光使没有光源的直接照射的景物表面仍有一定的亮度而可见。

环境光在空间中近似地均匀分布,即在任何位置、任何方向上,强度都一样。环境光通常由多个物体经多重反射形成,因而无法精确地计算光强。

计算机辅助设计(CAD)全文共93页,当前为第80页。81光照效果:反射

地面

反射

背景

石头

墙面

纹理

六边形

反射

圆环

金属

方锥

光滑

球体

平面漫反射

圆柱体

材质效果

物件

计算机辅助设计(CAD)全文共93页,当前为第81页。82

根据光照强度的计算,对于具有弯曲表面的物体,可以用其曲面方程算出每点的法线,然后按光照强度的计算模型计算每一点的亮度进行表达问题:1.运算量相当大

2.很多曲面无法用合适的方程表示通常仍然用多面体来逼近的方法模拟曲面物体平面多面体表面上各点亮度计算通常用二种基本算法:

1.恒定亮度法

2.Gouraud插值法

整个多边形只算出一个单独的亮度值,用这个亮度显示物体上多边形所在的那个面这种方法只适合在特定条件:1.考虑点光源照射时,总假定点光源和观察点离物体表面足够远2.物体表面仅暴露于背景光下,没有表面图案、纹理或者阴影时,才会产生准确的结果3.光照处理的基本算法计算机辅助设计(CAD)全文共93页,当前为第82页。83这个效应是奥地利物理学家ErnstMach首先发现而得名的。当我们观察画面上具有恒定亮度的区域时,在区域边界处眼睛所感受到的明暗程度常常会超出实际值,似乎光强发生了变化,这一现象称之为马赫带效应。当亮度急剧变化时将出现这一效应.它夸大了任何一条边界上亮度的变化,常显得更亮或更暗。

Gouraud插值法解决了恒定亮度法中的亮度不连续问题,在一定程度上消除了马赫带效应,显示画面的效果得到大大改善。但亮度插值法仅保证在多边形两侧亮度的连续性,而不能保证亮度变化的连续性,故Gouraud插值法并不能完全消除马赫带。同时,由于采用插值的方法,使得镜面反射所产生的高光形状与位置有很大的变异,甚至模糊不清或不能产生高光。因而Gouraud插值法对于只考虑漫反射的模型效果较好。计算机辅助设计(CAD)全文共93页,当前为第83页。84

阴影是由于物体遮挡光源的光线而形成的,有助于显示画面中各物体之间的空间位置及深度关系,使人感到物体的远近深浅,极大增加画面的真实感。

阴影一般由两部分组成:本影和半影本

光源

本影:任何光线都照不到的区域,呈现为全黑的、轮廓分明的区域半影:可接收到分布光源照射的部分光线的区域,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论