基于磁选机的AutoCAD的二次开发.doc

上传人:文****钱 文档编号:43715 上传时间:2018-05-10 格式:DOC 页数:51 大小:13.09MB
下载 相关 举报
基于磁选机的AutoCAD的二次开发.doc_第1页
第1页 / 共51页
基于磁选机的AutoCAD的二次开发.doc_第2页
第2页 / 共51页
基于磁选机的AutoCAD的二次开发.doc_第3页
第3页 / 共51页
基于磁选机的AutoCAD的二次开发.doc_第4页
第4页 / 共51页
基于磁选机的AutoCAD的二次开发.doc_第5页
第5页 / 共51页
点击查看更多>>
资源描述

1、安徽工业大学毕业设计(论文)说明书装订线I摘要本文旨在介绍基于磁选机的AUTOCAD的二次开发。在机械行业中,AUTOCAD软件是最流行的软件,并具有开放性的特点。为了提高设计质量及设计效率,目前比较普遍的做法就是对AUTOCAD进行二次开发。在本次毕业设计中就是以磁选机的零部件的参数化绘图为例,通过对基于磁选机的AUTOCAD的二次开发的分析与研究,来详细地描述CAD二次开发的过程。我们以VISUALLISP为平台,应用LISP语言编写磁选机零件的参数化绘制程序,应用DCL语言创建人机交流的对话框,并学习了对CAD菜单的加载。最后,当我们完成基于磁选机的AUTOCAD的二次开发时,我们就可以

2、通过点击新的CAD菜单,在对话框中输入数据,自动得到磁选机的零件图。实践表明,AUTOCAD的二次开发功能强大,在磁选机的设计中起到非常重要的作用,因此是一个十分有意义的课题。关键词AUTOCAD,VISUALLISP,二次开发,磁选机安徽工业大学毕业设计(论文)说明书装订线IIABSTRACTTHEPAPERAIMSATINTRODUCETHESECONDARYDEVELOPMENTOFAUTOCADBASEDONMAGNETICSEPARATORINTHEMECHANICALINDUSTRY,AUTOCADISTHEMOSTPOPULARSOFTWAREANDHASACHARACTERIS

3、TICOFOPENINORDERTOIMPROVEDESIGNQUALITYANDEFFICIENCY,CURRENTLYMORECOMMONPRACTICEISTOCONDUCTSECONDARYDEVELOPMENTOFAUTOCADSOFTWARETHISGRADUATIONDESIGNTAKESTHEPARAMETRICDRAWINGOFMAGNETICSEPARATORPARTSASTHEEXAMPLETHEN,THEREALIZINGPROCESSOFREDEVELOPMENTSINAUTOCADISPRESENTEDINDETAIL,THROUGHANALYZINGANDSTUD

4、YINGTHESECONDARYDEVELOPMENTOFAUTOCADBASEDONMAGNETICSEPARATORWEUSETHEVISUALLISPASAPLATFORM,THENAPPLYLISPLANGUAGECOMPILEPARAMETRICDRAWINGPROGRAMS,ANDDCLLANGUAGECREATEAMANMACHINEEXCHANGEDIALOGUEFRAMEWEALSOLEARNTHELOADONTHEMENUOFCADATLAST,WHENWEFINISHTHESECONDARYDEVELOPMENTOFAUTOCADBASEDONMAGNETICSEPARA

5、TOR,WECANGETMAGNETICSEPARATORPARTSDIAGRAMAUTOMATICALLYBYCLICKINGONTHENEWMENUOFCADANDINPUTINGDATAINTOTHEDIALOGBOXTHEPRACTICEINDICATESTHESECONDARYDEVELOPMENTOFAUTOCADISPOWERFULANDPLAYSAVERYIMPORTANTROLEINTHEDESIGNOFTHEMAGNETICSEPARATORSO,ITISAVERYSIGNIFICANTSUBJECTKEYWORDSAUTOCAD,VISUALLISP,THESECONDA

6、RYDEVELOPMENT,MAGNETICSEPARATOR安徽工业大学毕业设计(论文)说明书装订线III目录1绪论111相关概念1111磁选机1112CAD1113二次开发212研究背景2121CAD2122磁选机313发展概况4131CAD二次开发4132CAD与磁选机的结合52总体设计721系统7211简介7212系统变量7213系统设计原则7214系统开发需求822程序8221简介8222程序的特点分析9223重要的AUTOLISP基本语法结构1023CAD菜单10231菜单文件10232菜单的加载11233菜单文件结构12234菜单定义语法详解1424对话框DCL15241简介15

7、242组成16243控件的属性17244对话框设计原则与规范1825幻灯片19251概述19安徽工业大学毕业设计(论文)说明书装订线IV252幻灯片用途19253创建幻灯片20254显示幻灯片20255幻灯库2026小结213具体设计2231模型设计22311初始模型22312确定参数和点23313绘图思想2432菜单设计2433对话框设计27331框架格式27332DCL语言27333结束2934程序设计30341首先必须设置一个主体结构30342系统变量设置30343图层设置31344START部分(赋初值、状态)31345ACTION部分(设定相应动作)31346DRAW部分(绘图)32

8、347其他自定义的函数32348初值33349结束3335幻灯片设计34351创建幻灯片34352创建幻灯库3536支持文件搜索路径36361添加路径36362注意3737成果展示37371轴37372其他零件3938系统测试4339小结43安徽工业大学毕业设计(论文)说明书装订线V结论44致谢45参考文献46安徽工业大学毕业设计(论文)说明书装订线11绪论11相关概念111磁选机磁选是一种少污染或无污染的选矿工艺,是一种利用矿物之间的磁性差异而使不同矿物实现分离的分选方法。磁选的工作原理是待选别的物料给入磁选机的分选空间后,受到磁力和其他机械力(如重力、离心力、摩擦力、介质阻力等)的共同作用

9、。磁性矿物颗粒所受磁力的大小与矿物本身磁性有关;非磁性矿物颗粒主要受机械力的作用。因之,各沿不同路径运动,得到分选。一般说来磁性颗粒在磁场中所受比磁力的大小与磁场强度和梯度成正比。因其分选过程简单方便,又不会产生额外污染的特点,现广泛应用于黑色金属矿石的选别,有色和稀有金属矿石的精选,重介质选矿中介质的回收和净化,非金属矿石原料的除杂,破碎前含铁杂质的排除,从冶炼生产的铜渣中回收废钢以及污水处理等方面。我国铁矿石资源丰富,其中80的矿石都需要应用磁选进行分选。磁选机(MAGNETICSEPARATOR)是磁选的主要设备和载体,广泛用于资源回收,木材业、矿业、窑业、化学、食品等其他工场,适用于粒

10、度3MM以下的磁铁矿、磁黄铁矿、焙烧矿、钛铁矿等物料的湿式磁选,也用于煤、非金属矿、建材等物料的除铁作业,是产业界使用最广泛的、通用性高的机种之一。磁选机种类繁多,通常按磁场强弱、聚磁介质类型、工作介质以及结构特点等分类和命名。最基本的是按磁场强弱分类,有三类弱磁场磁选机,工作间隙的磁场强度为0616105A/M,用来选别强磁性矿物中磁场磁选机,工作间隙的磁场强度为1648105A/M,用来选别中等磁性矿物;强磁场磁选机,工作间隙的磁场强度为48208105A/M用来选别弱磁性矿物。112CAD计算机辅助设计CADCOMPUTERAIDEDDESIGN指利用计算机及其图形设备帮助设计人员进行设

11、计工作。在设计中通常要用计算机对不同方案进行大量的计算、分析和比较,以决定最优方案;各种设计信息,不论是数字的、文字的或图形的,都能存放在计算机的内存或外存里,并能快速地检索;设计人员通常用草图开始设计,将草图变为工作图的繁重工作可以交给计算机完成;由计算机自动产生的设计结果,可以快速作出图形,使设计人员及时对设计作出判断和修改;利用计算机可以进行与图形的编辑、放大、缩小、平移和旋转等有关的图形数据加工工作。除计算机本身的软件如操作系统、编译程序外,CAD主要使用交互式图形显示软件、CAD应用软件和数据管理软件3类软件。安徽工业大学毕业设计(论文)说明书装订线2AUTOCAD(AUTOCOMP

12、UTERAIDEDDESIGN)是美国AUTODESK公司首次于1982年开发的自动计算机辅助设计软件,用于二维绘图、详细绘制、设计文档和基本三维设计。现已经成为国际上广为流行的绘图工具。AUTOCAD具有良好的用户界面,通过交互菜单或命令行方式便可以进行各种操作。它的多文档设计环境,让非计算机专业人员也能很快地学会使用。在不断实践的过程中更好地掌握它的各种应用和开发技巧,从而不断提高工作效率。AUTOCAD具有广泛的适应性,它可以在各种操作系统支持的微型计算机和工作站上运行。113二次开发(一)概念二次开发,简单的说就是在现有的软件上进行定制修改,功能的扩展,然后达到自己想要的功能,一般来说

13、都不会改变原有系统的内核。比如,一些大公司(如IBM)开发了一个大型的软件系统平台,然后一些其它的中、小型公司就会根据不同的客户的需要,在该平台上进行第二次有针对性的开发。是否提供相应的接口,有的软件公司只提供软件,但也有些公司连代码一起出售,如是后者,就更方便进行二次开发了。(二)基本要求第一,你要有这个开源产品的所用语言的语言基础。第二,你要对这个开源产品的功能和使用要比较熟悉,因为你熟悉了,你才知道一个需求下来,你要改什么,什么是系统自带的,大概要怎么改。第三,你要熟悉这个开源产品的数据结构,代码结构,系统的框架结构,核心是哪里,附属功能是在哪里。简单点说,就是数据库,代码逻辑,文件目录

14、的熟悉。如果是用接口式的二次开发,则需要你对这个接口比较熟悉,一般来说会有相应的文档。第四,根据你的需求,然后利用开源产品的内核,进行系统的扩展和修改,以达到你的需求。第五,对其提供的SDK中的API函数有一定了解,以利于你对SDK中个函数的使用更加灵活方便。12研究背景121CADCAD技术作为一种高新技术,因其能带来巨大的经济效益,增强企业竞争力,所以越来越得到广大企业的重视,并在企业中得到广泛应用和迅速推广。我国CAD技术的研究始于70年代初期,80年代中期部分大中型企业和研究院所开始引进CAD技术。到目前为止已在很多企业得以实施,这种势头具有强劲趋势。但是从国内使用的情况来看,虽然取得

15、了一些可喜的成就,但并不容乐观。目前,国内实际应用的CAD/CAM系统可分为两大类一类是国内自主版权的CAD/CAM系统,另一安徽工业大学毕业设计(论文)说明书装订线3类是国外商品化的CAD/CAM系统。由于国外的CAD/CAM系统功能齐全、性能优良,并完成了商品化及工程化要求,所以在国内占得了很大市场分额。然而从引进了国外知名CAD/CAM系统的企业使用情况看,大部分企业没有充分利用起来,并没有发挥出应有的效益。其实无论是国内还是国外,一般企业都没有对CAD技术进行充分的利用。这其中原因很多,主要在于商品化的CAD软件一般都是通用化的软件,基本上可覆盖整个机械行业各个方面的工作,而用户在应用

16、时都具有自身行业特色。因此,用户在引进商品化的CAD软件之后,如果没有进行不同程度的二次开发,那么所引进的CAD软件将不会淋漓尽致地在本行业中发挥作用。特别是在机械行业的新产品开发及设计中,针对本行业特点的二次开发具有极其重要的实践意义1。纵观国内外的用户,无不说明了这一点。并且,近年来经济全球化和信息化使我国制造企业竞争环境、发展模式和活动空间等发生了深刻变化。这些变化对我国制造业提出了严峻的挑战。CAD技术的进步始终与工程实际相结合,它在我国的应用和发展必将对制造业产生深远的影响,对提高我国制造业核心竞争力起到举足轻重的作用。CAD技术一直处于不断发展与探索之中,CAD技术正朝着开放化、集

17、成化、智能化、协同化和标准化方向发展。国外CAD技术正以惊入的速度向前发展,然而我国CAD技术研究和应用的水平与发达国家相比仍有很大差距。我们应该清醒认识到先进的设计方法和设计手段是机械制造企业在激烈的市场竞争中获得成功的重要保证2。因此,CAD系统二次开发方面的问题便是广大CAD用户和科研工作者所面临的重要课题之一。122磁选机磁选专利权已有近200年的历史。直到1890年,美国博尔CMBOLL等人发明了电磁磁系的圆筒式磁选机,才开始用它进行选矿。其后相继出现了多种结构的选别强磁性矿物的干式和湿式弱磁场磁选机。50年代前所有的磁选机都是电磁磁系的;50年代中期,开始出现了以铝镍钴合金(见铝合

18、金)作为磁系的永磁磁选机,后来又逐渐以价格低廉、原料来源广的铁氧体永久磁铁代替铝镍钴合金。不仅节省电能,而且便于维护和检修。1965年,中国采用自己生产的锶铁氧体磁铁构成磁系,设计、制造了永磁圆筒式磁选机,并在其后的几年普遍推广。近几年,随着磁选技术及其永磁材料的不断发展特别是高梯度磁分离的出现以及超导材料在磁选中的应用,磁选设备正逐渐被人们所关注并呈现磅礴发展的景象。无论在结构的稳定性还是在分选效率上,国内的磁选设备都得到了不同程度的改善和提高,这对于选矿厂的经济效益的提高具有重要的意义3。如何提高磁选效率,实现铁矿石的最大化回收,是目前整个磁选行业所要解决的重要问题。而磁选机作为磁选的主要

19、设备和载体,其性能的好坏完全决定了磁选的效率。因此,国内外各个机械研究部门纷纷把目光投入到磁选机的研发和改良中4。这安徽工业大学毕业设计(论文)说明书装订线4其中CAD技术在磁选机设计中得到大量应用,显示了无可比拟的优越性ACAD设计彻底甩掉了图板,实现无绘图板、无绘图仪器、无描图员的三无设计,大大减轻了工程制图的劳动强度;B绘图规范化,图纸标准化,直接与国际业务接轨;C图纸管理磁盘化、文件化,同时有多个备份,保证了图纸资料的安全可靠性;D快速和准确性,等等。我们要发挥出CAD二次开发的作用,充分利用参数化设计,建立参数化磁选机库;利用CAD进行磁选机的三维实体造型设计、结构分析、运动分析、优

20、化设计,从三维实体中自动生成二维零件图;用计算机直接指挥数控车床、数控机床,逐步实现自动控制的无图纸加工,让技术人员进一步从繁杂的图纸中解放出来,去从事创造性的工作3。总之,大力发展磁选技术,发展节能、降耗的高效磁选设备,特别是将CAD的二次开发运用到磁选机的研发和设计中来,具有十分重要的意义。13发展概况131CAD二次开发随着CAD技术的快速发展,国内外出现了许多CAD软件,其中AUTODESK公司的主导产品AUTOCAD作为通用的CAD软件在机械、电子、航空、船舶、建筑、服装等领域得到了极为广泛的应用6。AUTOCAD的强大生命力在于其通用性和开放的体系结构。其良好的开放性使得各领域在使

21、用AUTOCAD的过程中均可以根据自身特点进行定制或开发,只有这样才能充分发挥AUTOCAD的作用。可以说,AUTOCAD的通用性为其二次开发提供了必要条件,而AUTOCAD开放的体系结构则使其二次开发成为可能。为满足广大用户二次开发的需求,AUTODESK公司相继推出了三代二次开发工具7。第一代二次开发工具AUTOLISP是随AUTOCADR218提供的二次开发工具。AUTOLISP是一种人工智能语言,完全嵌入在AUTOCAD内部,同AUTOCAD有机地结合成一体,既具备一般高级语言的基本结构和功能,又具备一般高级语言所没有的图形处理能力。AUTOLISP可直接调用几乎全部AUTOCAD的命

22、令,从而进行AUTOCAD的二次开发。利用AUTOLISP开发AUTOCAD的最典型例子就是实现参数化绘图的程序设计。第二代二次开发工具ADS(AUTOCADDEVELOPMENTSYSTEM)是AUTOCADR11开始支持的一种基于C语言开发应用程序的系统。ADS可直接利用用户熟悉的C编译器,将应用程序编译成可执行文件后在AUTOCAD环境下运行,从而既利用AUTOCAD环境的强大功能,又利用了C语言的结构化编程、运行效率高的优势。ADS克服了AUTOLISP所固有的诸多缺点而且具有速度快、安全性高的特点。ADS不是包含于AUTOCAD内部,而是作为一组AUTOLISP外部函数由AUTOLI

23、SP解释器装入、解释并请求AUTOCAD运行,因此ADS的各方面性能受到了限制。同时,随着网络技术的迅速发展,面向过程的ADS己经不能满安徽工业大学毕业设计(论文)说明书装订线5足要求了,所以,在AUTOCADR13中提供了面向对象的开发工具ARX。第三代二次开发工具VISUALLISPVISUALLISP是AUTOLISP的换代产品,与AUTOLISP完全兼容,并提供它所有的功能,是新一代的AUTOCADLISP语言。VISUALLISP已经被完整地集成到AUTOCAD系统之中,为开发者提供了崭新的、增强的集成开发环境,改变了过去在AUTOCAD中内嵌AUTOLISP运行引擎的机制,使开发者

24、可以直接使用AUTOCAD中的对象和反应器,进行更底层的开发,开发应用程序的时间被大大地缩短,原始代码能被保密,以防盗版和被更改。VISUALLISP是一个崭新的一体化可视CAD编程环境。OBJECTARXOBJECTARX是AUTODESK公司针对AUTOCAD(R13或以上版本)平台上的二次开发而推出的一个以C语言为基础的面向对象的开发环境和应用程序接口,它支持面向对象编程,同时还向下兼容ADS。OBJECTARX的早期版本称为ARX(AUTOCADRUNTIMEEXTENTION,AUTOCAD运行库扩展)8。VBAVBA(VISUALBASICFORAPPLICATION)是基于ACT

25、IVEXAUTOMATION技术的二次开发工具。ACTIVEXAUTOMATION是一套微软标准,以前称为OLEAUTOMATION技术。不管是用VB、VC、OFFICEVBA等从外部开发,还是用AUTOCADVBA从内部对AUTOCAD进行二次开发,都是通过调用AUTOCAD的对象体系结构来进行的。NETNET是基于MICROSOFTNET架构直接进行AUTOCAD二次开发的一种新技术。目前能够完全支持NET开发方法的AUTOCAD版本为AUTOCAD2006及其以后版本。AUTOCAD支持使用OBJECTARX托管包装类开发NET应用程序。托管包装类是针对大多数OBJECTARXSDK提供

26、的,使用户可以使用NET支持的任意语言(包括VBNET和C)来编写应用程序。AUTODESK公司针对AUTOCAD二次开发提供的三代开发工具以及各种开发工具所具有的特点。目前,第一代的AUTOLISP已能被第三代的VISUALLISP完全替代,第二代的ADS在AUTOCAD中已不再支持,所以,第三代开发工具将成为今后AUTOCAD二次开发的必然选择。而在第三代工具中应该具体选择使用哪一种,要根据开发者的需求和编程经验来确定,以达到事半功倍的效果。132CAD与磁选机的结合众所周知,机械零部件设计中一般都采用AUTOCAD等设计软件,但在复杂CAD问题或特殊用途的设计中,依据原有软件的功能往往难

27、以解决问题。在此情况下,根据客户的特殊用途进行软件的客户化定制和二次开发,往往能够大大提高企业的生产效率和技术水平。能提高设计的技术水平,缩短新产品开发研制周期,对市场需求作安徽工业大学毕业设计(论文)说明书装订线6出迅速反应,及时满足用户需求,增强产品的竞争力,这也正是企业所追求的。因此,将现代CAD技术应用于磁选机零部件的设计,开发出相应的磁选机设计软件,已成为行业当前的现实需求。安徽工业大学毕业设计(论文)说明书装订线72总体设计21系统211简介CAD系统是一种交互式软件包,用户通过界面来与图形软件包进行对话。用户可以通过多种多样途径与CAD软件包实现对话,即除了采用键盘输入、屏幕菜单

28、、鼠标、数字化仪器四种基本输入控制以外,还采取了高级用户界面(ADVANCEDUSERINTERFACE),即采取类似视窗的界面。AUTOCAD和浩辰、中望等CAD软件视窗上部第二行是菜单栏(MENUBAR),用户可以通过移动光标选择菜单栏中的菜单项,便出现下拉菜单。下拉菜单中的菜单项将是某类命令或子菜单项。选择子菜单项可以进一步选择其子命令。除菜单外,还可以将一些功能控制栏显示于CAD视窗内,这些功能栏就是工具栏。工具栏为某类命令的集合,其控制操作类似菜单项的操作。212系统变量系统变量是控制某些命令工作方式的设置。它们可以打开或关闭模式,如“捕捉”、“栅格”或“正交”。它们可以设置填充图案

29、的默认比例。它们可以存储关于当前图形和程序配置的信息。有时为了更改设置用户使用系统变量。在其他情况下,可以使用系统变量显示当前状态。例如,GRIDMODE系统变量在用户更改值时打开或关闭点栅格显示。在这种情况下,GRIDMODE系统变量在功能上等价于GRID命令。DATE是存储当前日期的只读系统变量。可以显示但不能修改该值。可以透明检查或修改系统变量的设置(即在使用另一个命令时)。但是,新值将直到被中断的命令结束时才会生效。CAD的系统变量很多,这里就不做具体介绍了,当然在后面的编程中将会做一些简单的解析。213系统设计原则(一)系统性从整个系统的角度进行考虑,系统的代码要统一,设计规范要标准

30、,传递语言要尽可能一致,对系统的数据采集要做到数出一处、全局共享,使一次输入得到多次利用。(二)灵活性系统应具有较好的开放性和结构的可变性,采用模块化结构,提高各模块的独立性,尽可能减少模块间的数据偶合,使各子系统间的数据依赖减至最低限度。安徽工业大学毕业设计(论文)说明书装订线8(三)可靠性可靠性是指系统抵御外界干扰的能力及受外界干扰时的恢复能力。一个成功的系统必须具有较高的可靠性,如安全保密性、检错及纠错能力、抗病毒能力等。(四)经济性经济性指在满足系统需求的前提下,尽可能减小系统的开销。一方面,在硬件投资上不能盲目追求技术上的先进,而应以满足应用需要为前提;另一方面,系统设计中应尽量避免

31、不必要的复杂化,各模块应尽量简洁,以便缩短处理流程、减少处理费用9。214系统开发需求综上所述,“磁选机CAD系统开发”应充分考虑以下需求(一)运算高效,准确无误。为此,需对程序不断调试、修正、完善,保证运算结果的准确性,验证其是否符合需求。(二)界面直观、简单、易操作。系统界面具有友好性,便于数据的输入、调用、处理和运算,同时各功能模块界面要直观,操作方便。(三)程序简化。原有的基本功能(如CAD中的删除、复制等)就不必编入程序中,即可对程序进行简化。22程序221简介前面绪论中已经介绍过,AUTODESK公司针对AUTOCAD二次开发提供了三代开发工具,并且这些开发工具各有各的特点。但因为

32、第三代开发工具将成为今后AUTOCAD二次开发的必然选择,所以在本次“磁选机CAD系统开发”的课题中我们将使用第三代工具中的VISUALLISP。在此,也将对VISUALLISP做一个具体的介绍VISUALLISP是为加速AUTOLISP程序开发而设计的软件开发工具,是一个完整的集成开发环境。VISUALLISP包括文本编辑器、格式编排器、语法检查器、源代码调试器、检验和监视工具、文件编译器、工程管理系统、上下文相关帮助、自动匹配功能和智能化控制台等。VISUALLISP用户界面良好,用过MICROSOFT软件的用户只需很短的时间即可掌握它。VISUALLISP界面如图21所示。VISUALL

33、ISP兼容以前的AUTOLISP程序。在VISUALLISP集成环境下开发AUTOLISP程序,就不再像以前那样编辑程序时,借用其他系统的文本编辑程序编写程序代码;调试程序时需要用户自己决定在程序的什么位置插入打印语法,以便查看变量的内容;在程序运行正常后,还必须将插入的调试代码删除或注释掉。在VISUALLISP集成环境下可以便捷、高效地开发AUTOLISP程序,可以经过编译得到运行效率更高、代码更加紧凑、源代码受到保护的应用程序。VISUALLISP是新一代AUTOLISP,它对AUTOLISP的功能进行了扩展,可以通过安徽工业大学毕业设计(论文)说明书装订线9MICROSOFTACTIV

34、EXAUTOMATION接口与AUTOCAD对象进行交互,可以通过反应器函数扩展AUTOLISP响应事件10。图21222程序的特点分析VISUALLISP应用程序具有如下特点(一)应用程序运行更快。由于VISUALLISP编译器可以将LISP源程序编译成OBJECTARX应用程序,应用程序通过AUTOCAD的OBJECTARX接口运行,所以比AUTOLISP加载运行快,并且省去了每次打开新图再调用的麻烦。(二)应用程序灵活性更高。由于VISUALLISP应用程序使用了OBJECTARX接口,可以将AUTOCAD和其它的应用程序如WINDOWS、OFFICE、ACTIVEX包含到AUTOLIS

35、P源程序中。从而改善了ACTIVEX与AUTOCAD对象模型之间接口特性,提高了应用程序的灵活性。(三)应用程序安全性更高。VISUALLISP编译成的二进制代码无法直接读取,所以它生成的应用程序更安全。(四)编程环境功能更强大。在控制台的命令行使AUTOLISP命令,可以直接看到结果;可以在编辑窗中同时显示AUTOLISP和DCL源程序的命令、注释、提示等,并以各种颜色区分表示,易于检查;可以多窗口同时编辑LISP和DCL文件,并提供DCL对话框预览功能;可直接将LISPDCL文件编译成一个OBJECTARX程序。使用VISUALLISP编程可避免LISP程序繁锁的调试过程,提高了编程效率,

36、它安徽工业大学毕业设计(论文)说明书装订线10不仅对CAD编程人员提供了新的强大编程工具,而且对每个AUTOCAD使用者都提供了更简单易用的LISP环境。223重要的AUTOLISP基本语法结构语法是学习编程的基础,在此简要介绍一些重要的AUTOLISP基本语法结构。以括号组成表达式,左右括号“”与“”一定要成对、相对称,内部的字符串双引号“”与“”也要成对。表达式格式函数名运算符运算符运算符表达式中的运算符可以是标准AUTOLISP函数,也可以是另一表达式或子程序。多重的括号表达式,运算的先后顺序是“由内而外、由左而右”。以文件格式存在的AUTOLISP程序(ASCII文件),其扩展名最好是

37、“LSP”。对于编写的环境,一般的文本编辑软件,可编辑ASCII文件的编写环境都适用。使用DEFUN功能函数定义新的命令或新的功能函数。新定义的功能函数名称若为“C函数名”,则此函数可以作为AUTOCAD新命令。加载AUTOLISP程序的做法有以下几种。在命令行直接输入(LOAD“LISP主文件名”)。使用APPLOAD命令加载程序。将LSP挂于MENU中,执行自动加载及执行。AUTOLISP程序中,在分号后的内容均为批注,程序不予处理。适时地增加批注,可以使程序更具可读性、学习性及完整性。AUTOLISP最常用的变量类型是“整数”、“实数”、“字符串”、“列表”4种,变量的类型依据设定值而自

38、动定义,变量会一直保持该值,直到被重新设定一个值或绘图结束自动消失于AUTOLISP程序中。使用SETQ功能函数为变量赋值的表达式为SETQ变量名称设定值。若想在AUTOCAD的环境中查看某一变量的值,在命令行直接输入“变量名”即可。在格式为DEFUNC函数名自变量/更改变量的程序中,变量如果在“/”右边变量内,则其为区域变量,否则为整体变量11。23CAD菜单231菜单文件AUTOCAD提供完全开放的菜单文件结构,为用户全面地自定义菜单提供可能12,且源菜单文件是文本文件,您可以采用任何文字编辑软件来编写您的菜单。源菜单文件被AUTOCAD调用之后,会自动编译转换为相应格式文件以提高菜单的调

39、用速度。表21列出了菜单相关文件的各种类型。安徽工业大学毕业设计(论文)说明书装订线11表21(在上述文件中用户自定义时最需关注的文件是MNU和MNL文件。)MNU与MNS的异同二者均是ASCII文本文件。最初产生的MNS文件与MNU文件相同,只是没有注释或特殊格式。MNS文件由AUTOCAD修改,以便反映每次用户通过界面对菜单文件内容所做的修改(例如修改工具栏的内容)。232菜单的加载(一)标准加载标准安装的AUTOCAD在启动后会自动加载菜单,其菜单文件位于AUTOCAD的SUPPORT支持文件夹内,名称为ACADMNU(或ACADMNS、ACADMNC)。AUTOCAD将最后加载的菜单文

40、件的名称保存在系统注册表中。在AUTOCAD启动时,加载最后使用的菜单。(二)指定加载其它菜单文件的方法是如下几种(注意加载其他菜单之前应该先添加“支持文件搜索路径”,在后面的具体设计中将会讲到。)命令MENU用来加在指定的菜单(替换现有的菜单)。命令MENULOAD或MENUUNLOAD加载或卸载附加菜单(称为局部菜单),向菜单栏中增加菜单或从中删除某个菜单。(三)菜单的加载顺序AUTOCAD查找给定名称的菜单资源文件MNS,查找时遵循库搜索程序13。下面用框图(图22)的方式表示加载菜单的顺序。安徽工业大学毕业设计(论文)说明书装订线12图22233菜单文件结构在详细了解菜单文件结构之前,

41、让我们打开ACADMNU菜单源文件,它是一个完全和优秀的范本。建议在打开此文件之前,为安全起见拷贝一个备份。(一)结构划分菜单文件划分为与AUTOCAD界面的特定区域相关的几个部分,如图23所示。图23安徽工业大学毕业设计(论文)说明书装订线13菜单文件不要求包括所有的菜单分部,而只须适用于应用程序的菜单分部。建议将菜单划分为几个小菜单文件,以便按需加载或卸载(用MENULOAD命令)。这样,不仅可以提高对系统资源的控制,也使开发和维护工作更加容易,因为这样可以对更小的片断进行操作。(二)分部菜单文件的各分部用SECTION_NAME格式的分部标签标识。表22列出了分部标签及其相关的菜单区域表

42、22分部标签菜单区域MENUGROUP菜单文件组名BUTTONSN定点设备按钮菜单AUXN系统定点设备菜单POPN下拉/快捷菜单区域TOOLBARS工具栏定义IMAGE图像控件菜单区域SCREEN屏幕菜单区域TABLETN数字化仪菜单区域HELPSTRINGS当突出显示下拉菜单和快捷菜单项时,或当光标位于工具栏按钮上时,显示在状态栏中的文字ACCELERATORS加速键定义(三)注释可在菜单文件中添加注释,用作版权声明或注释。菜单编译器忽略以两个斜杠/开始的行,如图24所示图24安徽工业大学毕业设计(论文)说明书装订线14234菜单定义语法详解(一)格式由图25可见要定制菜单的结构,只须按照固

43、定的格式依葫芦画瓢即可,而真正复杂的是菜单宏的千变万化。下面让我们一点一点剖析。图25(二)解析牢记如下控制符,才能在定制菜单时游刃有余。要想有庖丁解牛的绝技,还得花一番功夫牢记表23,别无捷径,当然这里也只是一些常用控制符的简单介绍。表23说明范例执行回车键一条线CC_LINE会议室CC_TEXT3000会议室空格每一个空格执行一次空格键。大多数情况下,空格键相当于回车;但某些情况下不然,如执行DTEXT命令输入文字时两点CC_CIRCLE_2P等同于两点CC_CIRCLE_2P暂停以等候用户输入(不能用在加速键部分)圆心,起点,角度CC_ARC_C_A说明表示等待输入圆心和起点_下划线,转

44、换AUTOCAD命令及其后的关键字,保证在各种语言版本中的兼容性直线CC_LINE样条曲线CC_SPLINECC取消命令ESC,连续两个CC可中断常用正在执行中的任何命令,以开始新的命令。直线CC_LINE样条曲线CC_SPLINE安徽工业大学毕业设计(论文)说明书装订线15延续菜单宏到下一行(如果是最后一个字符)初始化A2LAYERSET0GRIDONFILLOFFLIMITS0,0594,420显示当前顶层的图像、下拉或快捷菜单对象捕捉P0SNAPP0三维对象IIMAGE_3DOBJECTSICC重复项的前缀多点CC_POINT加载菜单部分或输入条件DIESEL宏表达式M的特殊字符对象捕捉

45、P0SNAPP0注调入POP0等于SNAP的菜单项B切换间距捕捉开或关CTRLB捕捉开关BO切换正交模式开或关CTRLO正交开关OP切换屏幕回显开或关全部不选CCPAI_DESELECTPV切换当前视口CTRLVZ禁止在菜单项末尾自动增加SPACEBAR的空字符M产生ENTER,用于DIESEL叙述中命令执行对话框命令,打开指定选项卡对象捕捉设置_DSETTINGS2绘图模式设置_DSETTINGS0预置UCSCC_UCSMAN124对话框DCL241简介在计算机辅助机械设计中,经常要用到已知的许多参数,并将参数输入计算机中在某一段设计工作完成后,有时需要人与计算机进行交流,即设计者能看到程序

46、运行到什么程度、有什么局部的结果、是否符合现实、需不需要改变等。这些都需要进行人机对话。利用对话框进行人机交流比较直观、简捷,许多软件都采用此种方法,只是利用的语言可能有些差别。在AUTOCAD环境下设计对话框,可以采用对话框控制语言DCL编写,DCL以ASC文件形式定义对话框。设计对话框讲究美观和功效性用户可以按照人们所希望的任何顺序输入,这也是对话框取代命令行接口的好处,它不会限制用户必须严格遵循提示的顺序对话框具有的容错性可以使用户更加自如地操作,不必担心出现不可逆的错误对话框要有合理的布局,最好将相关的输入控件纵向或横向对齐排列当某个控件或区域与当前操作设置无关,对话框自动将其/变灰0

47、以禁止用户选用对话框还应提供帮助功能、缺省值等,这些都是在对话框设计过程中应遵循的一些原则14。安徽工业大学毕业设计(论文)说明书装订线16242组成对话框由若干控件组成(如图26所示),控件是构造对话框的元件。AUTOCAD为用户预定义了23种控件和8个常用的固定控件。图26按照控件的特点可以将控件分为以下几类。(一)可以定义动作行为的控件(这类控件具有动作行为的属性,动作行为是用AUTOLISP的函数或表达式定义的,用鼠标单击这样的控件时,就会执行相应的函数或表达式)按钮BUTTON适用于立即产生可视的操作,如退出对话框、弹出对话框及其他特定操作。每个对话框至少包含一个确认按钮(或功能相当的控件)。编辑框EDITBOX用于输入字符串。图像按钮IMAGEBUTTON将图像显示在按钮上。列表LISTBOX内含若干行可供选择的文本,当表的内容超过表的范围时,将在表的右侧出现一个滑动条。列表的值是被选中的文本行的序号,序号从

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

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。