autocad二次开发技术在工程图纸绘制中的应用.doc
《autocad二次开发技术在工程图纸绘制中的应用.doc》由会员分享,可在线阅读,更多相关《autocad二次开发技术在工程图纸绘制中的应用.doc(64页珍藏版)》请在咨信网上搜索。
1、AutoCAD二次开发技术在工程图纸绘制中的应用1 前言随着计算机知识的普及和应用,计算机在社会各个领域显示出其巨大的生命力和发展潜力,作为计算机应用的一个重要领域-计算机辅助设计(CAD),在工程绘图设计中发挥了巨大的作用,而作为CAD绘图设计的代表软件,AutoCAD又显示出了它不同凡响的一面,由于其友好的用户界面,以及允许用户进行二次开发的特点,使之愈来愈为广大工程设计人员所熟悉、掌握并开发应用于专业方面的绘图设计软件。掌握了AutoCAD的二次开发技术,可以充分发掘AutoCAD的潜力,简化了绘图程序,在工作中能够事半功倍,大大提高工作效率。本文通过作者在最近几年的计算机辅助设计和绘图
2、工作中应用AutoCAD进行二次开发的一些经验,分别利用几个实例程序来说明AutoCAD二次开发技术在工程图纸绘制中的应用,内容包括以下几个部分:(1) 以多种图象文件格式实现对CAD图象屏幕的高保真的保存,并以此为基础建立图纸目录库,以便于今后对专业图纸的查询。(2) 利用对话框编程语言(DCL)来建立特殊字符编辑器,扩充AutoCAD的字符集。(3) 利 用AutoCAD语言实现Excel与Auto-CAD间的通讯。作者衷心希望以此抛砖引玉,同广大的工程设计人员及CAD技术人员进行交流,互相取长补短,为CAD技术在我国的进一步推广及应用尽自己的菲薄之力。2 用BMP位图文件来实现CAD图像
3、屏幕高保真的保存目前对CAD图像屏幕进行保存的方法很多,时下流行的一些抓图软件如Grabber等均能用热键激活来捕捉CAD图像屏幕的画面,生成COM 文件,通过在DOS下运行该文件来达到显示的目的,这在工程图纸的查询,浏览与管理中确实为用户提供了不少方便。我们在这里谨向读者提供一种新的方法,利用AutoCAD的一项鲜为人知的功能,通过配置打印机及光栅文件的输出,来实现CAD图像屏幕高保真的保存,通过此方法可生成256色的GIF,TGA,PCX,TIFF,BMP等各种图像格式的图形文件,可在DOS状态或WINDOWS下直接显示,也可在EXCEL,WORD, POWERPOINT,CORELDRA
4、W等文字处理和图形图像处理软件中应用,兼容性极好,且图像清晰,背景色可随用户需要调整,也可运用于工程图纸的查询,浏览和管理,以及多媒体的图纸文档管理。下面我们以如何生成256色的BMP位图文件为例,来说明一下如何应用AutoCAD的这项功能。(1)进人AutoCAD,打开一张工程图纸,用Zoom E全屏显示。(2)键人Config后回车,出现配置菜单(Configuration Menu),选择第5项配置绘图仪(Configure Plotter)后回车。(3)在随后出现的配置绘图仪菜单(Plotter Configuration Menu)中选择第1项增加绘图仪配置(Add a Plotte
5、r Configuration),回车。(4)随后出现可用的绘图仪配置菜单(Available Plotters ),从中选择第21项光栅文件的输出(Raster File Export ADI4 .2- by Autodesk),回车,然后在支持模式(Support Models)中选择3项640X 350(EGA)模式,回车。(5) 接着将会出现光栅文件的格式菜单,用户可根据自己的要求选择其中的一项,在此我们选择第4项BMP图像格式(Microsoft Windows Device-Independent Bitmap( .BMP),回车。(6) 然后选择颜色模式,在此处选择第3项256色
6、模式(All 256 Standard AutoCAD Colours),并选择背景色,此处选用黑色,即0号色。(7) 接下来选项可用缺省设置,在最后的打印机描述(Plotter Description)中键入BMP PLOTTER后回车,保存设置并退出Config。便大功告成了。照上述方法,一旦配置成功,这种打印的配置就永久的留在AutoCAD的打印机配置中了。读者可配置几种以上的光栅文件输出格式,并分别用GIFPLOTTER,PCX PLOTTER等命名,以备后用。在生成位图文件时,用户只需键人PLOT命令,选择BMP PLOTTER的打印机配置,再选择打印至文件(Plot to File
7、),然后在Filename的对话框中键人完整的路径及文件名即可,其余步骤同一般的打印步骤相同,最后打印输出,一幅清晰的CAD图像屏幕的BMP位图文件便生成了。用此方法可做成图纸档案库,便于用户今后对图纸进行浏览和查询。3 为AutoCAD设计特殊字符编辑- 对话框编制语言在AutoCAD中的应用实例在AutoCAD中有几个常用的特殊字符表示方法,如士用%P来表示,直径用%C表示等等,但终究数量太少,许多常用的符号,如平方,立方符号,、 、等,在AutoCAD的缺省定义字体Standard(由字形文件Romans. shx定义)中并无描述,因此在绘图过程中遇到要写这些字符时,常使人感到无从人手。
8、笔者在实践中发现只要通过修改字形源文件Romans.shp,增加用户自己定义的正文字形描述,便可解决上述的问题。特别值得一提的是26个希腊字母在Greeks. shp中已有描述,用户只需把这26个字母的字形描述Copy至Romans. shp中,就能在标准Standard字体状态下使用这些特殊字符,而不必每次更改字体。修改方法如下,用户可以先打开ACADSOURCE目录下的字形源文件Romans.shp,在文件末尾加上下列字形描述,字形编号从130开始至160,由于篇幅有限,这里仅列出笔者添加的平方,立方,根号,约等号及船肿符号的字型描述如下:* 130,27,ksquard /平方号描述/2
9、,8, 0, 18, 14, 8,一2,一21,1,10,3,一044, 01B,01A,58,01A,01B,060,2,8,4,一11,14,8,一6,7,0*1 31 ,25 ,ksquare /立方号描述/2,8,一3,21,14,8,一2,一21,1,060,8,一3,一4,10,3,一025,2,8,8,一12,14,8,一6,7,0*158,28,lcf /约等号描述/4,21,3,6,2,14,8(一1,一6),024,1,02D,8, 0,6),2,8,(2,一6),14,8,(一3,一3),4,6,3,21,0*159,37,lcq /根号描述/4,21,3,6,2,14,
10、8,(一2,一6),020,1,064,2, 02D,1,10,1,004,02C,10,1,044,2,02B,1,020,2,020,14,8,(一4,一3),4,6,3,21,0*160,31,ksq /船舯号描述/2,8,0,7,14,8,一2,一21,1,10,3,一044,01B,OIA,58,01A,01B,060,2,8,4,一11,14,8,一6,7,2,8,0,11,0把以上这几段描述加人以后,再用。ompile命令编译成romans. shx文件,这里建议用户仍保留原来的romans.sh x,把新编译成的形文件以short.shx保存。在完成上述工作后,用户就可以方便地
11、使用这些特殊字符了,但是每次使用时,需键人相应字符的ascii码,如此多的ascii码,用户要记住恐怕也非易事,因此笔者用AutoCAD中的对话框编制语言专门为此设计了一个特殊字符编辑器,上面所提及的特殊字符,均可以幻灯片对话框形式显示在用户面前,一目了然,便于选择,用户无需去背记相应的ascii码,就可把自己想要用的字符写到图形中。源程序由两部分组成,分别是对话框说明程序ddst. dcl和AutoLisp程序ddst. lsp,由于篇幅所限,这里不一一赘述,有兴趣的读者请与作者联系。4 利用AutoLisp语言实现Excel与AutoCAD间的通讯- 浅谈AutoCAD下材料表格的制作众所
12、周知,Excel是一个优秀的电子表格制作软件,其制作出来的表格风格多样,界面美观,而AutoCAD则是风靡世界的计算机辅助绘图软件,其绘图的精确度是任何绘图软件所不能比拟的,如果把这两者有机的结合起来,利用AutoCAD的绘图精度和Excel的完美格式,建立Excel和Auto-CAD之间的通讯联系,就可以在AutoCAD图形状态下制作出各种格式的表格。我们在实际工作中,运用AutoLisp编程,实现了Excel和AutoCAD之间的连接,下面就举例说明其用法。以下是一张材料表格的基本形式。这样一张表格如果在Excel中制作可以说是不费吹灰之力,同时在表中填写代号,名称等也很方便,然而如果是在
13、AutoCAD下,制作表格当然是不成问题,甚至可以作的更好,更精确,但是要往上面填写代号,名称等,而且又要格式整齐,上下左右对齐,用AutoCAD下的命令,不管是Text,还是Dtext,都不太容易。以下这两个Lisp程序可以帮助你解决这些问题。程序1用来在AutoCAD图形中按上述格式画出材料表,行数由用户自定。程序2把在Excel中已经制作好的表格内容,写到AutoCAD的图形中,格式整齐美观。 用户可以先在Excel中按预定格式制作好材料表的模板文件,文件后缀名为.xlt,以后每次使用时,只要打开此模板文件,在上面填写好内容,以csv格式(逗号分格方式)存盘即可。在AutoCAD下运行程
14、序2,便可把此材料表格中的内容写人图形中,此程序特别适用于大量材料表的编制书写工作,使用之后会倍觉得心应手。程序清单如下:程序1,T able.ls p程序2,L i st.ls p以上程序由于篇幅所限,这里不一一赘述,有兴趣的读者请与作者联系。5 结束语以上只是我们对AutoCAD二次开发技术在工程上应用的一点切身体会,希望能对读者有所启发,并希望以此起到抛砖引玉的作用,促进我国的计算机应用技术蓬勃发展。第14章 AutoCAD二次开发概述教学提示:通过前面的学习我们已经看到,AutoCAD确实是一个功能强大的绘图软件,但这仅仅是它的一方面,它的最具吸引力的另一面则是给用户提供的二次开发环境
15、,它为用户提供了很多增强和用户化AutoCAD功能的手段,利用这些手段,用户可将AutoCAD改造为符合自己工作环境要求的专门绘图系统,甚或是专业的CAD系统.教学要求:本章将通过简短的实例来说明AutoCAD二次开发的基本方法.学完本章,学员应该理解对AutoCAD进行二次开发的意义,了解对AutoCAD进行二次开发的途径.为进一步深入学习AutoCAD打下良好基础.14.1 AutoCAD二次开发的涵义通过AutoCAD为用户提供的开放式体系结构,称之为AutoCAD二次开发环境,实际上它是AutoCAD软件最具吸引力的风景线,利用它,用户可轻松地对AutoCAD实施专业化系统改造.总之,
16、虽然AutoCAD提供了丰富的图形处理命令和线型,图案,文字及符号库,但仍然不能覆盖用户的专业需要.因此要高效率地使用AutoCAD,就有必要对它们进行扩充与修改,即二次开发.二次开发应充分利用AutoCAD提供的二次开发环境.14.2 AutoCAD二次开发的主要途径AutoCAD提供的二次开发环境主要有两类:基于文件系统的开发和基于高级语言的 开发.首先,AutoCAD为用户开放了众多的系统文件,用户可以通过修改或创建这些文件来完成对AutoCAD软件的用户化工作,或称为定制工作.这些文件主要在Support文件夹中,如程序参数文件(acad.pgp),线型文件(acad.lin,acad
17、iso.lin等等),图案文件(acad.pat等等),形文件(acad.shp,acad.shx等等),脚本文件(*.scr等等),图形交换文件(*.dxf,*.dxb等等)和菜单文件(*.mnu,*.mnc,*.mns,*.mnr,*.mns等等)等都可由用户重新定制以适合本专业的需要.定制工作的主要内容包括:(1) 通过合理地设置系统变量,建立符合本企业标准的初始绘图环境.(2) 通过建立模板图,可获得初始图形的高起点.(3) 借助于程序参数文件为经常使用的AutoCAD命令建立简 短易记的别名.(4) 借助于程序参数文件为常用的外部程序建立可在AutoCAD内部执行的命令.(5) 编写
18、脚本文件,自动地完成成组的任务.利用脚本文件还可以编写外部程序与AutoCAD的接口程序.(6) 通过线型文件定义符合企业标准和工作需要的线型.(7) 利用图形文件建立符合企业标准的填充图案.(8) 通过形文件定义符合企业标准和工作需要的符号和字体.(9) 通过菜单文件建立适合自己工作需要的菜单,工具栏和快捷键 其次,定制工作虽然能够进一步增强AutoCAD原有功能,使其更加用户化一些.但这种方法开发AutoCAD仍受到许多方面的限制,比如通过对这些文件的改写与新建完不成如下工作:(1) 不能给AutoCAD增加新的命令;(2) 不能给AutoCAD增加复杂线型和复杂填充图案;(3) 菜单系统
19、的用户化功能有限;(4) 不能直接操作AutoCAD图形库文件;(5) 不能实现自动绘图;(6) 不能完成专业CAD系统的任务.为了突破这些限制,能够使用户随心所欲地对AutoCAD进行二次开发,基于高级语言开发的主要内容包括:(1) 用DIESEL语言定义满足自己工作要求的状态行.(2) 利用Visual LISP或ObjectARX提供的集成开发环境定义AutoCAD新命令,实现参数化绘图,直接操作图形库及扩充AutoCAD的现有功能.(3) 通过图形交换文件编写外部程序与AutoCAD双向交换图形信息的接口程序.(4) 用DCL语言定义对话框,得到方便实用的用户界面.只有利用高级语言,才
20、有可能将AutoCAD开发为专业化的CAD系统.下面两节分别举例说明文件开发与高级语言开发的方法 14.3 利用AutoCAD文件系统做二次开发 14.3.1 线型文件的功能与结构在AutoCAD中,每种线型都可通过线型文件来定义,这些线型文件的扩展名为.lin.系统线型文件为acad.lin和acadiso.lin.所有线型文件都是文本文件,可由任何文本编辑软件创建和修改.下面是acad.lin的一部分;简单线型定义 *BORDER,Border _ _ . _ _ . _ _ . _ _ . _ _ .A, 12.7, -6.35, 12.7, -6.35, 0, -6.35 *BORDE
21、R2,Border (.5x) _._._._._._._._._._._.A, 6.35, -3.175, 6.35, -3.175, 0, -3.175 *BORDERX2,Border (2x) _ _ . _ _ . _A, 25.4, -12.7, 25.4, -12.7, 0, -12.7 *CENTER,Center _ _ _ _ _ _ _ _ _ _ _A, 31.75, -6.35, 6.35, -6.35 *CENTER2,Center (.5x) _ _ _ _ _ _ _ _ _ _ _A, 19.05, -3.175, 3.175, -3.175 *CENTERX
22、2,Center (2x) _ _ _ _ _A, 63.5, -12.7, 12.7, -12.7; 复合线型定义 *FENCELINE1,Fenceline circle -0-0-0-0-0-0-A,6.35,-2.54,CIRC1,ltypeshp.shx,x=-2.54,s=2.54,-2.54,25.4*FENCELINE2,Fenceline square -A,6.35,-2.54,BOX,ltypeshp.shx,x=-2.54,s=2.54,-2.54,25.4*TRACKS,Tracks -|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|
23、-|-|-|-A,3.81,TRACK1,ltypeshp.shx,s=6.35,3.81*BATTING,Batting SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSA,.00254,-2.54,BAT,ltypeshp.shx,x=-2.54,s=2.54,-5.08,BAT,ltypeshp.shx,r=180,x=2.54,s=2.54,-2.54*HOT_WATER_SUPPLY,Hot water supply - HW - HW - HW -A,12.7,-5.08,HW,STANDARD,S=2.54,R=0.0,X=-2.54
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- autocad 二次开发 技术 工程图纸 绘制 中的 应用
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。