31第三章AutoCAD图形平台的使用第一节计算机图形学概要计算机图形学是关于计算机图形技术的学科。它主要研究构造模型并利用计算机及其图形设备生成、处理、存储、输入与输出图形的有关原理、算法和技术,在工程领域有广泛的应用,因此学习和掌握计算机图形技术对于工程技术人员来讲,具有十分重要的现实意义。计算机图形学是CAD领域的理论基础,涉及的内容广泛,这里主要介绍基本概念及有关的一些算法。一、坐标变换坐标变换是图形处理的一种手段。对于不同类型的形体、图形和图纸,在不同的处理阶段需要采用不同的坐标系,以提高图形处理的效率和便于用户的理解。下面介绍一些与坐标变换有关的概念。1.坐标系在图形处理过程中涉及到多种不同的坐标系,但概括起来可以把坐标系分成两大类:一类是面向系统的,例如绘图机和图形显示器等图形设备坐标系以及语言环境设置的窗口等,它主要用于实现绘图定位;另一类是面向用户的,例如图形坐标系、自然坐标系等,它用于分析图形自身的关系、建立数学模型以及采集数据。2.齐次坐标在数学上,齐次坐标是空间位置矢量的一种表示方法。一个n维位置矢量,在普通坐标下表示为[x1,x2,…,xn],它的齐次坐标表示在齐次坐标下将矢量表示成n+1维空间位置矢量[hx1,hx2,hx3,…,hxn,h],h为比例因子。当h=1时,空间位置矢量为[x1,x2,…,xn,1],并称为其次坐标的规格化形式,在图形变换中一般采用这种规格化形式,此时在数值上齐次坐标与普通坐标相等。这种n+1维向量表示一个n维向量的坐标表示方法称为齐次坐标表示法。二、曲线、曲面的设计道路设计中处理的图形,按其形状可分为两大类。第一类是规则形状的图形,通常由平面、二次曲面等组成,例如桥涵的墩台、基础等结构图。这类图形一般采用常规的三面视图的方法来表示。第二类是自由形状的图形,通常由自由型曲线和曲面构成,例如地面就属于这类图形。自由形状图形包括的信息较为复杂,传统的图形学方法在描述自由形状图形方面有一定的困难,一般采用数学方法定义、描述、传递图形信息。曲线和曲面的设计是计算机图形学中研究的重要内容之一,在实际工作中有广泛的应用。这里主要介绍曲线、曲面的一些基本概念以及其设计的基本方法。1.曲线的表示曲线的表示,有以下三种方法:(1)显式表示:一般表示为y=f(x)的形式,如一条直线可表示为y=kx+b。这种表示形32式清晰明确,在计算机中容易实现。然而,这种表示方法难以表示多值曲线,并且在多数情况下,工程设计问题难以得到显函数表达式。(2)隐式表示:一般表示为f(x,y)=0的形式,例如单位圆可以写成x2+y2=1。用隐式表示可以克服显示表示的一些缺陷,但是这种表示方式不能直观地表达因变量与自变量的关系,而且得到一个点,需要解方程f(x,y)=0,使计算和作图都非常困难。(3)参数表示:若用t表示参数,则曲线上每一点笛卡儿坐标可表示为x=f(t),y=g(t),如单位圆可表示为x=cost,y=sint,0≤t≤2π。采用参数方程表示曲线具有显著的优点,如参数方程便于处理斜率为无穷大的问题;有更大的自由度控制曲线的形状;便于计算和编程。因此这种表示曲线的方法在计算机辅助几何设计中得到广泛应用。2.曲线的定义曲线的定义方法有多种,道路设计中常用的有如下几种:一种是设计计算问题,即曲线是根据设计者的意图和具体设计要求计算推导而得到的,例如传统设计中,对道路中线的定义就属于这一类问题;第二种是插值问题,即设计中曲线函数是未知的,已知的仅仅是一组有序的型值点,要求通过这些型值点构造光滑曲线,例如已知地形等高线上的一组有序点,等高线的生成问题,就是插值问题。常用的插值方法有拉格朗日插值、样条插值等;第三种是逼近问题,设计者只能初步给出一些控制点和控制参数,给定的数据点本身含有不确定的成分,这时并不要求构造的曲线一定通过给定的型值点,而是要求曲线在某种定义下最好地逼近给定的全部型值点,这就是逼近问题。通常可以采用贝塞尔(Bezier)法和B样条函数等来定义这类曲线。(1)曲面的定义方法曲面在工程设计与制造过程中有着广泛的应用。下面介绍工程设计领域常用的几种曲面表示方法。①双线性曲面在单位正方形的参数空间内,以其相反边界进行线性插值而得到的面称为双线性曲面。如图3-1所示,由四个点1p、2p、3p和4p定义的双线性曲面为:uvPuvPvuPvuPvuQ4321)1()1()1)(1(),(显然该曲面的四个角点:1)0,0(PQ,2)1,0(PQ,3)0,1(PQ,4)1,1(PQ。如果给定的四个顶点共面,则),(vuQ为插值于这四点的平面四边形,如给定不共面的四个点,则用这四个点双线性插值面即为一张双曲面。如图3-2所示。②Coons(孔斯)曲面Coons曲面的主要思想是用多个“曲面片”拼接成一张复杂的曲面,每个曲面片由四条边界曲线和边界连续条件来定义。为了使拼合后的Coons合成曲面的整体上保持一定的连续性,Coons给出了合适与各种光滑拼接条件的曲面片数学表达式。具体内容可参考有关的书籍,在这就不一一讨论。③B样条曲面B样条曲面是B样条曲线的拓广,是目前曲面外形设计的主要方法之一。双三次B样条33曲面是最重要的一种B样条曲面,其定义为:30,4,4,30)()(),(ijijijPvBuBvuPu,v∈[0,1]式中)(4,uBi和)(4,vBj为三次B样条基函数,),(vuP(i,j=0,1,2,3)为曲面的控制点。具体构造过程可参考有关的书籍,在这就不一一讨论。图3-1双线性曲面的双线性插值图3-2双线性曲面的定义第二节AutoCAD的基础知识AutoCAD是美国AutoDesk公司推出的计算机辅助绘图与设计软件包。与其它大型的、专门化的CAD软件相比,AutoCAD对计算机系统的需求相对较低,而且功能很强。所以一经推出就受到广大微机用户的喜爱,很快就成为世界上装机数量最大的CAD软件。通过十几年34的不断改进和完善,AutoCAD的功能日益强大,甚至可以同专业化的CAD软件相媲美,而操作却变得越来越简单、直观。迄今为止,AutoDesk公司已经对AutoCAD进行了十几次的升级,从AutoCADl.0直到2003年初推出的AutoCAD2004。AutoCAD产品在不断适应计算机软硬件的同时,自身的功能也日趋完善,性能不断提高。本章主要介绍AutoCAD的基础知识。一、AutoCAD的功能AutoCAD目前较为流行的版本有2000、2002和2004版。AutoCAD的功能非常丰富、强大,随着版本的增加,其功能也不断地在扩充和更新。目前较为流行的版本主要的功能概括起来有以下几方面:1.文件管理功能AutoCAD的文件管理功能主要是对AutoCAD的图形文件进行新建、打开、存盘操作,而且提供它所支持的不同格式的图形文件之间的转换。2.提供丰富的绘图工具复杂图形都是由各种简单的图形组成的。AutoCAD提供了一些常用的最基本的图元及各自的绘图方法。例如:直线(line)、构造线(constructionline)、多重平行线(mutiline)、多义线(polyline)、多边形(polygon)、矩形(rectangle)、圆弧(arc)、圆(circle)、样条曲线(spline)、椭圆(ellipse),图块(block)、点(point)、图案填充(hatch)、面域(region)、文字(text)、三维曲面(surfaces)、三维实体(solids)等。通过这些基本的图元,就可以完成复杂图形的绘制和三维建模工作。3.编辑功能计算机绘图的优点很大程度上表现为其方便强大的图形编辑功能。对于高级图形用户而言,利用AutoCAD来创建由线、圆、弧及点组成简单图形是远远满足不了需要的。借助于图形的编辑命令来构造、修改图形的大小、形状以及改变图形的属性可以帮助用户快速、准确地绘制出各种复杂的图形。所以对于一个高级用户来说,熟悉和掌握图形的编辑命令是学会使用AutoCAD的一个必要环节。AutoCAD的图形编辑功能主要包括三大主要功能:①修改已经存在的图形对象的形状或大小。它可以准确快速地执行最小的变化、纠正错误和为其他任何原因而做的改动。②由已经存在的简单图形创建复杂的图形。它可以大大地缩短图形绘制的时间。③修改图形的属性。使用户很方便地通过修改图形的属性(如颜色、线型、图层、位置坐标等)来实现对图形的修改。AutoCAD编辑命令可以分为三类:①具有修改功能的编辑命令,②具有创建功能的编辑命令,③修改对象属性的编辑命令。4.设置视图该功能包括视图的重绘刷新、视图缩放,设置视图和视口等。5.插入对象利用该功能可以在图形中插入图块、图片(bmp、jpg、tif、tga等格式)、外部引用、OLE文字对象、windows剪切板中的内容等。356.设置绘图环境开始绘图后可以修改图形的各项设置,包括图形单位和图形界限、捕捉和栅格、图层、线型及字体标准等。用户还可以根据个人习惯或某些特定项目的需要来调整AutoCAD环境。7.尺寸标注图纸生成过程通常分为四个阶段:绘图、注释、查看和打印。在注释阶段,设计者要添加文字、数字和其他符号以传达有关设计元素的尺寸和材料的信息,或者对施工、制造工艺进行注解。标注是一种通用的图形注释,可以表示对象的测量值,例如墙的长度、柱的直径或建筑物的面积等。AutoCAD提供了多种标注类型和多种设置标注格式的方法。可以指定所有图形对象的测量值。可以测量垂直和水平距离、角度、直径和半径。也可以创建一系列从公共基准线引出的标注,或者采用连续标注。8.三维建模功能AutoCAD支持三种三维建模方式:线框模型、曲面模型和实体模型。其中线框模型、曲面模型主要包括绘制各种三维点、三维线及三维曲面的功能;实体模型则不仅包括常见基本三维实体图元,如球体、长方体、楔形体、圆环、圆锥体等,还包含拉伸三维实体造型、旋转体,并且包含三维布尔运算。运用AutoCAD的三维建模工具可以完成复杂三维物体的建模。9.绘图辅助工具为了方便用户绘图,AutoCAD提供了丰富的辅助绘图工具,这些辅助绘图工具包括定位工具,如栅格、捕捉、正交、追踪等;图元选择辅助工具,如正选框、反选框、ctrl键、fence等,这些工具为实现绘图时的精确、快速定位和选择提供了方便。10.图形参数显示和修改功能11.图形打印功能AutoCAD提供了图形打印功能,用户进行图形打印配置和打印样式管理方便,支持批处理打印。支持在模型空间和图纸空间打印,特别是图纸空间的打印更加方便。12.提供多种二次开发工具随着应用的深入,仅仅利用AutoCAD提供的交互功能已不能满足设计的要求,特别是在解决专业问题时,需要将设计计算、数据处理和图形绘制等问题进行综合处理时,就显得尤为突出。AutoCAD提供的几种开发工具为解决专业问题提供了有效的手段。目前AutoCAD提供了图形交换文件(标准图形交换文件)、命令组文件(SCR文件)、基于AutoLisp语言的开发技术、基于VisualBasic语言的ActiveX及VBA开发技术、基于VisualC++语言的ObjectARX开发技术等开发方法和工具。13.定制绘图工具除了上述基本功能外,AutoCAD还有其它的一些功能,这里就不一一列举,在使用的过程中,可以参考用户使用手册和帮助文件。二、AutoCAD的绘图环境1.AutoCAD界面每次启动AutoCAD,都会打开AutoCAD窗口。这一窗口是用户的设计工作空间,它包括36用于设计和接收设计信息的基本组件。图3-3显示了AutoCAD窗口的一些主要部分。(1)菜单栏包含缺省的AutoCAD菜单。菜单由菜单文件定义,用户可以结合自己的专业和使用习惯来修改或设计菜单文件。此外,安装第三方应用程序可能会使菜单或菜单命令增加。缺省菜单文件为acad.mnu。菜单的加载使用menu命令。(2)标准工具栏包括常用的AutoCAD工具(例如重做、放弃和缩放),还有一些Microsoft