需要此工具请Q:3567 618 336

CAD批量处理工具是基于AutoCAD二次开发的批处理插件。将程序加载到CAD中,使用自定义的Lisp代码就可对多个文档进行批量操作。

1.文件说明

CAD批量处理工具批处理程序包含两个文件:一是基于VBA的程序,二是基于Lisp的程序。

2.安装运行

(1)将程序拷入CAD安装路径下的Support文件夹下,如E:\Program Files\AutoCAD 2007\Support;

(2)运行CAD,在命令行中键入"APPLOAD",在弹出的选择对话框中选择上一步中Support文件下的.lsp,点击"加载",关闭对话框;

(3)如果加载成功,命令行中输出"已成功加载.lsp",输入命令BAT即可运行程序。程序主界面如下:

注意:如果需要CAD启动时即自动加载此工具,需要修改CAD安装路径E:\Program Files\AutoCAD 2007\Support下acad2007.lsp

  1. (arxload"vel.arx")
  2. (if (not (= (substr (ver) 1 11) "Visual LISP"))
  3. (load "acad2007doc.lsp");
  4. )
  5. ;; Silent load.
  6. (princ)可在代码中的任何地方用下列常数代替实际值:

3.工具说明

本程序具体操作流程如下:

(1)【添加文件】或【添目录】来选择要进行批量处理的Dwg文件,也可以通过【删除】和【全清】按钮来操作清除文件列表中的文件;

(2)单击【编辑】按钮,弹出编辑代码窗口,如图3-2所示。用户可编辑、打开、保存代码,编辑完成后,单击【关闭】,程序会自动保存编辑内容,并更新显示在代码窗口(如果使用脚本语言,请选择【Script代码】);

(3)点击【开始批处理】,程序将对文件列表中的文件分别打开,并按代码窗口中的代码操作(如果勾选"处理完成后自动存盘",操作结果文件将覆盖原始数据)

4.代码分析

本程序的测试用例是两幅宗地图,现在的要求是:

  • 将JZD和JZP层的所有文字字体改为宋体;
  • 将HZ样式改为txt.shx、hztxt.shx(大字体);
  • 将JZD、JZP和JMD层所有对象颜色改为红色。

测试代码为测试用例文件夹下的"宗地图修改20140820.lsp",现对其中比较关键的代码进行说明:

(1)获取某层的文字

  1. (setq ss (ssget "x" (list (cons 0 "*TEXT") (cons 8 "JZD"))));

使用了ssget建立选择要素集,其中"x"代表选择所有,0和8表示不同的组,*TEXT是过滤选择文本,JZD要进行选择的图层。

(2)新建或更改文本样式

  1. (command "_STYLE" "ST" "SimSunb.ttf" "0" "1" "" "" "")
  2. (command "_style" "hztxt" "txt.shx,hztxt.shx" 0 0.8 0 "n" "n" "n")

新建样式使用了_style命令,"ST"表示样式名称,"SimSunb.ttf"字体名称;如果要使用大字体的样式,字体参数设置为如"txt.shx,hztxt.shx";如果样式名已存在命令将人修改参数,如果不存在,则会新建立。

(3)将某层的颜色改为指定的颜色

  1. (vla-put-color layer color_no)

调用系统中的函数来修改层颜色,其函数原型如上所示,它在Express Tools中,注意要确保安装程序安装了此组件。其中颜色参数使用枚举值:

常数

描述

vbBlack

0x0

黑色

vbRed

0xFF

红色

vbGreen

0xFF00

绿色

vbYellow

0xFFFF

黄色

vbBlue

0xFF0000

蓝色

vbMagenta

0xFF00FF

紫红色

vbCyan

0xFFFF00

青色

vbWhite

0xFFFFFF

白色

(4)将层对象中的颜色随层

  1. (command "_.chprop" "_all" "" "_color" "_bylayer" "")

将图层的颜色修改,并不能将已有的对象的颜色改掉,需要将图层对象的颜色设置为随层。

5.常见问题

(1)打开文件是提示选择字体

CAD的字体中缺少这种字段,要么使用另一个字体,要么去下载缺失的字体,并放在CAD安装路径下的Fonts文件夹下,如E:\Program Files\AutoCAD 2007\Fonts

(2)添加某一个图形时,不能加载到列表中

本程序的目的是进行批量处理,至少要同时选择两个图形文件才能正确加载到文件列表,如果只选择一个文件时,则不能正确添加。

(3)运行时报错,保存文档时出错

一般地,在批处理时,都需要勾选"处理完成后自动存盘",但如果处理之前此图形已打开,保存时就会报错,所以,在批处理时图形不会打开。

(4)怎样验证操作是否失败?

验证操作最主要的方式是通过对比测试案例中的错误是否修正,如果执行的代码,会弹出CAD的帮助窗口,建议在批量处理之前,测试好Lisp代码。

(5)命令行报错:没有定义vlax-get-acad-object

在测试Lisp代码中,使用了vlax-get-acad-object这个对象,而它是属性Express Tools中的,所以在安装软件时,要选择安装Express Tools

(6)单独测试lisp通过,批处理失败

只要单独测试lisp代码能够达到目的,批量处理一般能达到目的。需要注意的是,如果lisp代码中定义了无参的函数,只需将函数里的内容复制到BatchProc的代码窗口,而无需整个函数;如果lisp代码中定义了带参的函数,需要将整个函数复制进去,并将调用的命令复制在后面。

(7)出现异常: 0xC0000005 (访问冲突)

调用BAT命令出现"出现异常: 0xC0000005 (访问冲突)", 一般在调用command时候会出现这种情况,只能重装CAD了。

(8)报错"info或'info透明调用 ***是否垂直?"

调用系统打印命令(-plot)批量打印宗地图,在测试机上测试通过,但在客户机上报错:"使用命令:info或'info透明调用 ***是否垂直? <N>",只能打印第一个文件。

CAD中,有许多的命令时可以透明使用的,透明命令其实就是可以让用户在使用另一个命令时,依然能够在命令行中输入这些命令的功能。所以透明命令会经常被用于更改图形的设置或显示。当系统完成了透明命令后,就会恢复执行原命令了。

测试机上能通过说明是客户机环境问题,我尝试把CASS环境关闭后,即可实现批量打印。

[精品]CAD批量处理工具相关推荐

  1. [免费]CAD批量清理与版本转换工具——无需打开图纸清理及转换版本

    软件功能 CAD图纸批量清理.垃圾文件删除.图纸版本转换软件. 批量清理指定文件夹下(可包含子文件夹)的全部*.dwg图纸文件,清理效果等同于使用AutoCAD打开图纸后执行PURGE清理命令并勾选所 ...

  2. cad批量打印_办公常用:PDF转CAD工具+CAD批量打印工具(高级版)

    从事工程类.设计类工作的小伙伴们一定会经常产生PDF转CAD和CAD批量打印的需求,很多时候都是直接花钱找打印店的人员来进行操作,这并不是说这两项需求有多复杂,而是没有趁手的工具而已.本期神器妹就分享 ...

  3. cad小插件文字刷_小懒人CAD插件管理工具

    小懒人cad插件管理工具是一款CAD插件管理软件,可以帮助用户管理CAD插件,不需要单个安装,支持一键加载,小懒人CAD插件管理软件不需要安装,下载即可使用.有需要的小伙伴欢迎来西西下载. 软件特征: ...

  4. CAD插件学习系列教程(九) 简单好用的CAD图层管理工具

    我是王石头,不知不觉,这已是CAD插件学习系列教程的第九篇了,这次推荐一款非常好用的CAD图层管理工具. 众所周知,在CAD制图时,掌握CAD图层的快速开关是提升制图速度的关键,一个CAD制图高手和一 ...

  5. cad批量打印_CAD打印技巧:这种批量打印方式你会用吗?

    虽然网上有很多关于批量CAD打印的教程,但还是有很多刚开始CAD入门学习的小伙伴直呼看不懂,小编今天就以浩辰为例,告诉大家各种批量CAD打印的区别,为啥你不会用?以及哪种到底适合现在的你,能让你快速上 ...

  6. cad批量打印快捷键_[效率]CAD批量打印和批量合并PDF

    点击上方「蓝字」关注我们 ▍▍▍点此加入学习交流群~~~ 话不多说,直接上图! 有没有感觉到似曾相识,眼花缭乱 如果你用普通的打印方式打印这些图纸,花你几分钟不足为奇,费脑又费眼睛的重复几十次操作,也 ...

  7. 黄聪:基于Linq to edmx的实体数据模型(EDM)类名批量修改工具

    C#实体数据模型(EDM)类名批量修改工具 最近打算用EF来开发一下新的系统,但是数据库中的表名被直接映射为了实体类名,但是我的表名为Base_XXX(XXX为表名)的格式,这导致我在操作数据的时候不 ...

  8. python批量改名_Python写个批量改名工具

    批量改名工具 ✕ 小伙伴说要给文件名前面批量添加点内容,于是就写一个简单的程序! 说起思路... 获取文件夹下的所有文件名, 修改成需要的文件名. 完了! 哈哈哈哈!!!! 主要用到的是 os 模块中 ...

  9. 批量探测工具fpingping常用命令集合大学霸IT达人

    批量探测工具fpingping常用命令集合大学霸IT达人 批量探测工具fpingping是各个系统自带的基于ICMP协议的主机探测工具.但该工具一次只能检测一个主机,不满足渗透测试批量探测的需要.fp ...

  10. 批量ping工具fping

    批量ping工具fping ping是各个系统自带的基于ICMP协议的主机探测工具.但该工具一次只能检测一个主机,不满足渗透测试批量探测的需要.Kali Linux提供一款批量探测工具fping.用户 ...

最新文章

  1. 用FIO测试存储性能
  2. uni-app阻止事件冒泡
  3. 【转】进阶 JavaScript 必知的 33 个点【进阶必备】
  4. shell 编程 : 函数
  5. ElasticSearch 插件开发
  6. 中国将在大连建立下一个硅谷
  7. 关于Android平台上面is not valid; is your activity running?
  8. 微信小程序添加外部字体方法
  9. 利用LFW对人脸识别模型进行精度评测
  10. Excel下拉列表式的动态图表,你会制作吗?
  11. mysql audit_关于Mysql Enterprise Audit plugin的使用
  12. 区块链是什么通俗解释_区块链是什么,区块链是什么通俗解释
  13. word-spacing letter-spacing white-space 分辨
  14. 亚信安全:坚持自主可控 做中国本土化专业化的安全公司
  15. oracle12c创建表空间、创建用户、创建权限
  16. 虚云法师:但尽凡心,别无圣解
  17. Chapter 3. Strings, Vectors and Arrays -C++ Primer 5 notes
  18. 手机应用软件下载导航php源码_腾讯地图官方版下载-腾讯地图手机导航9.1.1 最新版...
  19. 安卓屏幕朗读app_推荐5个让人心动的学习App
  20. 挂起模块 hungapp

热门文章

  1. 北大青鸟python教程_北大青鸟python课程六大优势
  2. hdp对应hadoop的版本_hadoop不同版本区别
  3. 数据可视化技术:python数据可视化工具库汇总(共21个)
  4. Linux系统基本操作及命令详解
  5. linux中原子量的学习和理解
  6. 第五讲 交错级数、绝对收敛和条件收敛
  7. gateface php,XAMPP下载-Xampp(PHP环境套件)V8.01 官方win版-ucbug软件站
  8. spss数据统计分析工具IBM SPSS Statistics 26 for Mac安装教程
  9. malloc函数详解以及例程
  10. 西门子plc软件 linux,西门子PLC软件安装总结工程师们都在收藏