



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、巧用excel编写脚本实现对AutoCAD文档的批量处理 摘要:在使用AutoCAD的过程中,我们经常需要处理成百上千的dwg文档,通常我们会选择编程来解决,但是这个对大多数人来说都有些难度。这篇文章则是提供了另一种方法来实现,script脚本。本文详细介绍了AutoCAD中,脚本文件的原理,实现过程,并结合两个实例实现了对单文档和多文档的批量处理。关键词:AutoCAD脚本;批量处理;脚本编写;excel编辑Abstract: in the process of using AutoCAD, we often need to deal with
2、hundreds of thousands of DWG document, generally we choose programming to solve, but this for most people have some difficulty. This article is to provide a method to realize, script scripts. This paper introduces the AutoCAD, script file of principle, process, and combined with two examples of sing
3、le document and realized how document batch processing.Keywords: AutoCAD script; Batch processing; Script writing; Excel editor中图分类号:G306.4 文献标识码:A 文章编号:0.引言尽管差不多每年AutoDesk公司都会推出全新版本的AutoCAD,但是有一个东西始终没变,就是它强大的可扩展性。我们也认为这是它最值得称道的特性之一,如命令行用户接口,lisp脚本,或者VBA和.NET应用程序。所有这些特性的提供都只为一个目的,就是用户定制。但是lisp和.net应
4、用程序开发对于大多数AutoCAD程序来说都不是一天两天能学会的。不过幸运的是,我们还有一种简单的人人都能理解和掌握的方法让批量自动处理CAD文档成为可能,那就是Script脚本。可能好多人还是觉得陌生,但是实际上,我们从用上AutoCAD的那天起我们就已经在编写Script脚本了。这怎么可能呢?有人会问。其实 AutoCAD脚本文件就是一系列标准CAD命令的有序组合。你知道怎么使用在AutoCAD中敲命令,你就一定会写脚本。1.脚本简介脚本就是一个宏,或者说是你可以一次运行的一组命令,而且可以重复运行多次,让你可以自动执行那些你手动需要很长时间才能完成的任务。脚本非常强大,你可以在单个文件中
5、执行,也可以对多个文件执行。脚本出现很多年了但是却有好多人没意识到它的便利性。创建脚本文件的步骤如下:1. 设置FILEDIA系统变量为0,组织从打开对话框访问文件2. 然后执行你想自动执行的步骤,但是只能从命令行输入。把步骤写在纸上或者电脑中的记事本程序里。你可以直接拷贝命令行到记事本。在AutoCAD中按F2可以打开文本框。3. 在每个命令行后面敲回车,或者空格键(相当于回车)。所以在脚本文件里,空格非常重要,你必须保证正确使用。为了保证脚本文件的可读性,你可以每行只放置一条命令。4. 把包含空格的层名、文件名、文件路径放到引号里5. 不时插入一些注释以便于日后阅读修改,注释格式为文本前加
6、引号6. 保存文件扩展名为.scr7. 重新设置FILEDIA系统变量为12.单文档脚本的实现下面我们就试着写这样一个脚本文件:创建一个叫ABC的图层,把层颜色设置成红色,并把该层置为当前。在众多的CAD命令中,LAYER是同时有对话框版本和命令行版本的命令之一,通常CAD会执行命令的对话框版本。虽然便于操作,但是SCRIPT脚本却并不能和对话框交互。所以,我们就必须明确地告诉CAD执行命令的命令行版本。通常我们只需要在命令前面加上一个小横杠(-)。相应的,我们键入-LAYER,而不是LAYER,返回如下提示输入选项?/生成(M)/设置(S)/新建(N)/重命名(R)/开(ON)/关(OFF)
7、/颜色(C)/线型(L)/线宽(LW)/透明度(TR)/材质(MAT)/打印(P)/冻结(F)/解冻(T)/锁定(LO)/解锁(U)/状态(A)/说明(D)/协调(E):如果我们想改变颜色,我们就键入C,想设置材质键入MAT,当然我们也可以键入全称colar和materiel。那么我们要新建一个名叫ABC的图层,自然就输入N了然后出现提示:"输入新图层的名称列表:",输入“ABC”然后根据提示输入“C”提示新颜色 真彩色(T)/配色系统(CO),我们输入“yellow”,提示输入图层名列表,这些图层使用颜色 2 (黄) <0>,我们输入“ABC”最后输入两个空格
8、,结束命令。把这一组命令依次记下来,我们就得到一个脚本文件,如下Script Description-LAYER LAYER 命令的命令行形式N 新建图层(new)ABC 新图层名C 设置颜色(color)Yellow 黄色(也可以输入2)ABC 想设置黄色的图层名空格,代表回车空格,代表回车把左边这列命令拷贝下来,打开记事本粘贴,然后另存为abc.scr(注意扩展名),我们也可以写成一行,即:-layer n ABC C yellow ABC脚本文件写好了,我们如何让运行它呢.AutoCAD里面有两种方式运行:1、 在命令行输入Script,或者简写的SCR2、 在菜单中选择工具>运行
9、脚本这两种方式都会弹出一个选择脚本文件的对话框,选择脚本文件即可运行。我们新建一个dwg文档,然后执行刚才我们创建的abc.scr文件,就会发现得到的结果和我们在CAD中输入一条条命令得到的结果一样。3.多文档脚本的实现显然这时我们只是对一个单独的文档进行了处理,CAD脚本的威力并没有发挥出来,脚本的强大之处在于它可以对CAD文档进行批量处理。假设我有100个dwg文件,存放在G:abc目录下,我们要对它们执行清理操作,以减小文档体积。最原始的方法就是一个个打开文档,在命令行执行如下步骤(这里我用的是常规清理):1、打开文档open2、输入要打开的图形文件名 : 1.dwg3、命令: -PUR
10、GE4、输入要清理的未使用对象的类型块(B)/标注样式(D)/组(G)/图层(LA)/线型(LT)/材质(MA)/多重引线样式(MU)/打印样式(P)/形(SH)/文字样式(ST)/多线样式(M)/表格样式(T)/视觉样式(V)/注册应用程序(R)/零长度几何图形(Z)/空文字对象(E)/全部(A): a5、输入要清理的名称 <*>: *6、是否确认每个要清理的名称?是(Y)/否(N) : n7、保存文件命令: qsave8、关闭文档命令: close9、打开下一个文档,重复上面的步骤,直至100个文档处理完毕。显然,这样费时又费力,要批量处理文档,我们首先需要获得这些文档的文件名
11、列表,当然我们不可能一个个自己把文件名敲出来,这显然和我们快速处理的宗旨相违背。其实我们只需要在从windows开始菜单中运行CMD命令,打开dos窗口:输入cd abcdir *.dwg /b > list.txt这样,我们就在G:abc目录下得到一个包含所有dwg文件名的文本文件list.txt.但实现批量处理,我们还需要加入命令,变成如下格式:open 1.dwg -purge A * n qsave closeopen 2.dwg -purge A * n qsave closeopen 3.dwg -purge A * n qsave closeopen 4.dwg -purg
12、e A * n qsave closeopen 5.dwg -purge A * n qsave close怎么实现呢?看上面这种格式,我们应该马上就想到微软的office程序excel。打开excel,把list中的内容粘贴到新建表格的第二列,如下图:1、选中A1单元格,双击右下角的小黑点2、选中C1:A1单元格,双击右下角的小黑点3、另存为jiaoben.txt,打开文本文件,替换TAB为一个空格:4、改文件后缀为.scr,脚本文件就编辑好了。在运行这段脚本之前,我们还有一件事情要做,就是必须定义文件支持路径以便CAD能顺利找到这些dwg文件。在AutoCAD菜单点工具>选项或者在CAD命令行输入窗口上点
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 供暖项目转让合同标准文本
- 会场出租合同标准文本
- 农村地皮出售合同样本
- 行业专家的知识分享与传播计划
- 上海住房合同标准文本
- 人防工程租用合同样本
- 出售塔吊电缆合同标准文本
- 冷冻食品合同样本
- 兼职合同样本正规
- 出售旧木头房屋合同标准文本
- GB/T 4706.66-2024家用和类似用途电器的安全第66部分:泵的特殊要求
- GB/T 4706.1-2024家用和类似用途电器的安全第1部分:通用要求
- 2022年6月英语四级真题 第一套
- 《事故汽车常用零部件修复与更换判别规范》
- 2023-2024学年河南省安阳市殷都区八年级(下)期末数学试卷(含答案)
- 江苏省苏州市昆山、太仓、常熟、张家港市2023-2024学年七年级下学期语文期末试卷
- 家族办公室公司章程
- 敲墙搬运合同范本
- (高清版)JTGT 5190-2019 农村公路养护技术规范
- 质量通病防治指引(二次结构)
- 2024年辅警招聘考试试题库含完整答案(各地真题)
评论
0/150
提交评论