计算机辅助设计与制造课件CA.ppt

上传人:wuy****n92 文档编号:54255956 上传时间:2022-10-28 格式:PPT 页数:24 大小:48KB
返回 下载 相关 举报
计算机辅助设计与制造课件CA.ppt_第1页
第1页 / 共24页
计算机辅助设计与制造课件CA.ppt_第2页
第2页 / 共24页
点击查看更多>>
资源描述

《计算机辅助设计与制造课件CA.ppt》由会员分享,可在线阅读,更多相关《计算机辅助设计与制造课件CA.ppt(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 第第7 7章章 AutoCAD AutoCAD二次开发技术二次开发技术7.1 7.1 向向AutoCADAutoCAD增加新命令增加新命令任何CAD系统,都不可能满足所有用户的要求,特别是一些专业设计用户的要求。而AutoCAD的特长就是可以用简单的程序设计,给系统增加一些专业设计所需要的新命令。利用AutoLISP语言编程就可以很容易地向AutoCAD增加新命令,用户只要用自定义函数Defun产生一个名为“C:XXX”的函数即可。图7.1标注粗糙度下面的AutoLISP函数就是向AutoCAD增加一条标注粗糙度的新命令,命令名为CCD。(defunC:ccd()(setqbp(getpoi

2、ntnEnterbasepoint:)ang(getanglenEnterrotateangle:)txt(getstringnEntervalue:)(commandlinebp(polarbp(+ang(/pi3)12)(setqpt(polarbp(+ang(/pi1.5)7)(commandlinebppt(polarptang7)(cond(angpi)(commandtext(polarpt(+ang70)1.2)2.5(*ang(/180pi)(evaltxt)(T(commandtextjr(polarpt(+ang70)3.7)2.5(*(-angpi)(/180pi)(ev

3、altxt)7.2 7.2 用户界面的开发设计用户界面的开发设计菜单是普遍采用的界面形式,它将命令和选择项均列在相对应的交互设备上,通过鼠标器控制光标等办法来点“菜”(即选择拾取)。菜单功能是通过菜单文件来实现的,AutoCAD菜单文件是一个标准的ASCII文件,允许用户根据需要对它进行改造或创建,形成用户界面。7.2.1 7.2.1 菜单文件的类型菜单文件的类型菜单文件实际上是指一组协同定义和控制菜单区域的显示及操作的文件。AutoCAD的菜单文件类型主要有以下5种。(1)MNU:样板(Template)菜单文件,是ASCII码文本文件。(2)MNC:将MNU菜单源文件编译之后得到的菜单目标

4、文件。(3)MNR:菜单资源文件。(4)MNS:AutoCAD系统所生成的菜单源文件。(5)MNL:菜单LISP文件。使用MENU命令可引导AutoCAD从磁盘文件中装载一个新菜单。1 1菜单文件的结构:菜单文件的结构:每个菜单文件由若干段组成,每段包含若干子菜单和菜单项。AutoCAD2002标准菜单包含以下10个菜单段。(1)下拉菜单段:POP1POP11(2)光标菜单段:POP0(3)定点设备按钮菜单段:BUTTONS1,BUTTON2(4)辅助菜单段:AUX1AUX4(5)工具栏段:TOOLBARS(6)图像块菜单段:IMAGE(7)屏幕菜单段:SCREEN(8)数字化仪菜单段:TAB

5、LET1TABLET4(9)快捷键段:ACCELERATORS(10)状态栏帮助段:HELPSTRINGS2 2菜单文件的格式:菜单文件的格式:菜单文件由多个菜单段组成,每段有一个段标题,单独占一行,格式如下:*段名标识该菜单从属于何种设备。AutoCAD有如下段标号:*MENUGROUP菜单组名*BUTTONSn按钮菜单段*AUXn辅助菜单段*POP0光标菜单段*POPn下拉菜单段*IMAGE图像块菜单段*SCREEN屏幕菜单段*TABLETn数字化仪菜单段*ACCELERATORS快捷键段*HELPSTRINGS状态栏帮助段子菜单的起始标记为“*子菜单名”,子菜单名可由用户任意指定,但各个

6、子菜单名不能相同。3 3子菜单的调用:子菜单的调用:用户在菜单项中可用以下格式来调用子菜单:$菜单类型=被调用子菜单名被调用子菜单的菜单类型采用缩写形式,它们分别为:缩写形式菜单类型S屏幕菜单A1A4辅助菜单B1B4按钮菜单P0P16弹出式菜单I图像块菜单T1T4数字化仪菜单下面是调用子菜单的例子:$S=TRAN调用屏幕子菜单TRAN$I=PARTS调用图像块子菜单PARTS$T1=ELEMENT调用数字化仪子菜单ELEMENT如果没有指定被调用子菜单名,则返回上一菜单。例如菜单项AUTOCADY$S=用来恢复前一屏幕菜单。4 4菜单项的表示:菜单项的表示:菜单或子菜单中包含的一行行命令串称为

7、菜单项。菜单项有以下几种表示:(1)菜单项名命令串该方法用于屏幕菜单项或下拉菜单项的表示。(2)字符串方括号中的字符串只是作为子菜单的标题项使用。(3)字符串该种表示方法是第(1)种表示方法的特例,此时,字符串既作为菜单项名显示在屏幕上,又作为命令串出现在命令行。(4)-子菜单名和-菜单项名命令串前者是调用下拉子菜单或光标子菜单的菜单项。后者是子菜单的最后一个菜单项,方括号内的菜单项名将显示在屏幕上,命令串的作用同(1)所述。(5)幻灯片库名(幻灯片名,文字)命令串这是图像块菜单段中菜单项的完整表示形式。(6)字母数字命令串这是数字化仪菜单段中菜单项的表示形式。菜单项的一般格式如下:comma

8、nd_taglabelmenu_function其中:(1)“command_tag”为命令标识符,用作标识名,它由字母、下划线和数字构成,位于菜单项名前面,是菜单项的标识。各个菜单项的标识名不能同名。(2)“label”为项标题,方括号中的项标题作为菜单项名将显示在屏幕的相应区域内。(3)“menu_function”为实现预定功能的操作,如执行AutoCAD的命令、调用子菜单或AutoLISP函数等。下面的一个菜单项是合法的:ID_saveSaveCC_save7.2.3 7.2.3 用户界面开发的一般方法用户界面开发的一般方法用户界面(即菜单文件)的开发有两种途径:一种是在AutoCAD

9、的标准菜单文件中增加新内容;另一种是用户建立自己的菜单文件。1 1在中增加新内容在中增加新内容在标准菜单文件中增加新内容的操作步骤如下:(1)确定要加入的菜单类型,如下拉菜单、屏幕菜单、图像块菜单等。(2)分析所要加入菜单的功能,如绘图、编辑、显示、图形库管理等。(3)确定所要增加的菜单的位置。(4)用文本编辑程序调出文件,将要增加的菜单新内容放到相应的菜单段中或子菜单中。(5)对增加了新内容的文件进行编译。2 2建立用户菜单建立用户菜单除了修改AutoCAD标准菜单文件外,还可以开发独立的用户菜单文件。建立用户菜单的操作步骤如下:(1)确定要开发的菜单类型,如下拉菜单、屏幕菜单、图像块菜单等

10、。(2)分析所要开发的菜单的功能,如绘图、编辑、显示、图形库管理等。(3)确定各个菜单的位置。(4)用文本编辑程序编辑用户自己开发的菜单文件(.MNU文件),然后将其保存在对应于AutoCAD的相应文件夹(SUPPORT)中。(5)在AutoCAD系统环境下,使用MENU命令调用用户菜单,格式如下:Command:MENU7.3 7.3 图形系统与外部程序交换信息图形系统与外部程序交换信息7.3.1 7.3.1 图形交换文件图形交换文件AutoCAD提供了一种固定格式的后缀为.DXF的ASCII码文件,称为图形交换文件,用于与其它CAD系统及用户应用程序间的图形信息交换。1 1总体结构总体结构

11、DXF文件由6个段(SECTION)组成:(1)标题段(HEADER)此段记录了有关图形的各种当前设置和参数,它实际上描述了AutoCAD系统的当前工作环境。(2)类段(CLASSES)类段保存由应用程序定义的类,而该类的实体则出现在块段,实体段,对象段中。(3)表段(TABLES)表段又由9张表组成,它们依次为:视口配置表(VPORT),线型表(LTYPE),层表(LAYER),字体表(STYLE),视图表(VIEW),坐标系表(UCS),应用程序名表(APPID),标注字体表(DIMSTYLE),块定义表(BLOCK_RECORD)。(4)块段(BLOCKS)此段记录在图形中所使用的块及其

12、各块内所包含实体的描述。(5)实体段(ENTITIES)此段包含图中所有实体的信息。(6)对象段(OBJECTS)对象段包含图形数据库中所有非图形实体的定义数据2 2组(组(GROUPGROUP)DXF文件的最小组成单元为组(GROUP),每个组占两行,第一行为组代码,第二行为组值。组代码是非负的整数,而组值的数据类型取决于组代码的数值,其规定如下:组代码的范围组值的数据类型09字符型1059实型6079整型常用组代码的含义如下:0:标识一个事物的开始,如一个段、一个表、一个块、一个实体等。2:名字,如段、表、块等名字。8:图层名(固定的)。1018:X坐标值。2028:Y坐标值。3037:Z

13、坐标值。4048:高度、宽度、距离、半径、比例因子等。5058:角度值。3 3实体(直线、圆、圆弧)的几何数据描述:实体(直线、圆、圆弧)的几何数据描述:(1)直线的几何数据的组代码10,20,30:起点的X,Y,Z坐标11,21,31:终点的X,Y,Z坐标(2)圆的几何数据的组代码10,20,30:圆心的X,Y,Z坐标40:圆的半径(3)圆弧的几何数据的组代码10,20,30:圆弧中心的X,Y,Z坐标40:圆弧的半径50:圆弧的起始角51:圆弧的终止角4 4图形交换命令图形交换命令与DXF文件有关的AutoCAD命令有二个:Dxfout和Dxfin。(1)Dxfout命令用于将AutoCAD

14、屏幕上的图形信息转换成DXF文件。(2)Dxfin命令用于将DXF文件转换成AutoCAD的图形,与Dxfout命令相反。7.3.2 7.3.2 用用C C语言生成语言生成DXFDXF文件文件用C语言生成DXF文件就是编写生成DXF文件的接口程序,进行接口程序开发应注意以下2个问题:(1)实用的DXF文件接口程序应该是一些具有专用功能的函数模块组成。(2)AutoCAD可以接受缺少任何一些段、表的DXF文件.1 1接口程序的基本函数模块组成接口程序的基本函数模块组成(1)begin建立一个DXF新文件,并生成实体段段标题的函数。应用程序须最先调用此函数。(2)ending生成段尾和文件结束符的

15、函数,并关闭DXF文件。应用程序应最后调用此函数。(3)line写直线实体函数。(4)circle写圆实体函数。(5)arc写圆弧实体函数。2 2生成生成DXFDXF文件的文件的C C语言接口程序语言接口程序 3 3应用举例应用举例利用上述5个接口函数绘制如图所示图形的C语言主程序如下:main()floatx0,y0,b,h,d;/*输入图形有关参数*/printf(“Enterx0,y0,b,h,d:”);scanf(“%f,%f,%f,%f,%f”,&x0,&y0,&b,&h,&d);/*调用接口函数*/*调用接口函数*/begin();line(x0,y0,x0+b,y0);line(

16、x0+b,y0,x0+b,y0+h);arc(x0+b/2,y0+h,b/2,0,180);line(x0,y0+h,x0,y0);circle(x0+b/2,y0+h,d/2);ending();图7.9样图 7.3.3 7.3.3 用用C C语言读取语言读取DXFDXF文件文件读取DXF文件,从中提取用户应用程序所需信息,这是AutoCAD与高级语言程序接口的又一种形式。下面的C语言程序是从DXF文件中提取直线实体几何信息的源程序,即提取直线的起点坐标xs,ys,zs和终点坐标xe,ye,ze,并将提取的坐标值存放在用户指定的数据文件中。7.4 AutoCAD7.4 AutoCAD对话框设

17、计对话框设计对话框(DialogBox)是人机交互的主要界面之一。它具有良好的视觉效果,操作方便、直观,输入数据与顺序无关。7.4.1对话框的组成对话框的组成(1)按钮。一般用于启动和执行命令等操作。(2)编辑框。是一个用户可以在其中输入和编辑文本的窗口,一般用于输入文件名、点的坐标、距离等数据。(3)列表框。用于为用户显示各种选择,用户可以在列表框中选择一个或多个项。(4)单选按钮组。用于一组相互排斥的有限选择集中的一个选择。(5)复选框。相当于一个开关,打开时显示,关闭时为空。(6)图像按钮。以图像代替文本的按钮。7.4.2设计对话框的步骤设计对话框的步骤(1)确定应用程序需要输入的数据。

18、(2)确定每一项数据使用哪一种控件。例如需要输入文本或数据,就选用编辑框;若需要在一个选择集中选择一项,可以使用列表框、单选按钮等。(3)根据选定的控件按主次关系和美学观点进行布局。(4)编写DCL文件(对话框文件)。(5)编写应用程序处理对话框。编写应用程序可以使用AutoLISP语言。此处介绍使用AutoLISP来管理对话框。7.4.3 DCL7.4.3 DCL文件的编写方法文件的编写方法对话框文件的扩展名为.dcl,对话框文件是用对话框控制语言(DialogControlLanguage)来编写的。1 1DCLDCL文件的结构:文件的结构:一个DCL文件可以包含下面三部分内容:(1)引用

19、其它的DCL文件,用includefilename来实现(2)控件原型和子组装定义。(3)对话框定义。2 2对话框设计举例:对话框设计举例:3 3几个主要的几个主要的AutoLISPAutoLISP对话框处理函数简介:对话框处理函数简介:(1)(action_tilekeyaction_expressoin)功能:将控件与操作表达式联系起来。(2)(get_tilekey)功能:返回控件的当前值,即获得对话框中key对应的控件所指定的操作。(3)(load_dialogdclfile)功能:加载一个DCL文件,dclfile是字符串类型,它指明要加载的DCL文件名。(4)(new_dialog

20、dlgnamedcl_ia)功能:显示由dlgname指定的一个对话框。(5)(start_dialogstatus)功能:启用对话框,开始接受用户的输入。4 4标准退出按钮子组装标准退出按钮子组装在编写对话框文件时,可以直接使用标准退出按钮子组装,从而使DCL文件简化。AutoCAD提供了4种标准退出按钮子组装:(1)ok_only(2)ok_cancel(3)ok_cancel_help(4)ok_cancel_help_info7.4.4 7.4.4 对话框的设计实例对话框的设计实例设计一个坐标输入对话框,即用对话框的形式输入坐标(x,y,z),并将输入的坐标值存入数据文件xxx.dat中,其中文件名xxx由用户输入。1确定对话框的形式和布局:因输入数据为文件名(文本)和坐标值(数值),故选用编辑框作为输入控件,再加“OK”(确认)和“Cancel”(取消)两个按钮。2 2用对话框控制语言编写用对话框控制语言编写DCLDCL文件:文件:3 3用用AutoLISPAutoLISP语言编写管理这个对话框的程序:语言编写管理这个对话框的程序:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 初中资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁