本书专注于AutoCAD中的AutoLISP编程,旨在帮助读者掌握AutoLISP编程技巧,提升AutoCAD操作的自动化能力,主要内容涵盖AutoLISP的基础概念、核心编程思想,以及在实际工作场景中的具体应用,包括图层管理、块操作、工作环境定制等。本书还提供了编写高效且可维护代码的建议,帮助读者避免常见的陷阱和错误。为便于学习和理解,本书创建了70多个AutoLISP脚本程序作为参考,方便读者实践和应用。
本书内容全面系统,实用性强,适用于具有一定AutoCAD基础操作能力的建筑师、工程师和设计师,特别是希望提高AutoCAD自动化能力、提升工作效率和准确性的专业人士。
基础篇
第1章 绪论 002
1.1 自动化设计与共享的重要性 002
1.2 为什么选择AutoLISP来进行共享 003
1.3 AutoLISP在项目中的实际应用 004
1.4 AutoCAD操作界面的构成 005
第2章 AutoLISP基础 014
2.1 AutoCAD与API 014
2.2 AutoLISP的创建及运行方法 016
2.3 AutoLISP的基本规则 017
2.4 AutoLISP的基本形状 018
2.5 加载应用程序 019
第3章 AutoLISP的自动加载和应用 021
3.1 放置AutoLISP文件的专用文件夹 021
3.2 制作启动文件acaddoc.lsp 023
3.3 借用自定义命令实现高效调试的简化 024
3.4 创建自己的Library库文件 025
实战篇
第4章 AutoLISP函数与实例 030
4.1 COMMAND函数 030
4.2 SETQ函数和GETPOINT函数 031
4.3 GETREAL函数 032
4.4 IF函数 033
4.5 REPEAT函数 034
4.6 WHILE函数 035
4.7 GETVAR函数和SETVAR函数 036
4.8 LIST函数 038
4.9 ERROR函数 039
第5章 AutoLISP与图层 042
5.1 COMMAND函数和ENTMAKE函数的区别 042
5.2 利用COMMAND函数来创建图层 043
5.2.1 用AutoLISP批量创建图层 044
5.2.2 图层名的输入简化 047
5.2.3 优化命令行的显示 047
5.2.4 图层命令的快捷键 049
5.3 利用ENTMAKE函数来创建图层 051
5.3.1 使用DXF组码创建图层 051
5.3.2 批量创建图层 054
5.4 添加线型的方法 056
5.4.1 基本思路 056
5.4.2 文件内已有线型时的对策 057
5.5 将标注自动添加到一个新图层 058
5.6 5个特殊的变量 059
5.6.1 基本使用方法 060
5.6.2 专属图层的创建:ZD_Layers 061
5.7 图层的颜色 062
第6章 AutoLISP与块和尺寸 065
6.1 块的调用 065
6.1.1 通过工具选项板调用 066
6.1.2 通过共享网盘调用 067
6.1.3 通过外部参照调用 068
6.2 块和AutoLISP的结合 068
6.3 块的批量导出 071
6.4 块的插入 072
6.4.1 直线上块的插入 072
6.4.2 斜线上块的插入 074
6.4.3 多段线上块的插入 074
6.4.4 删除重叠的部分 075
6.5 AutoLISP的扩展函数Visual LISP 076
6.6 批量修改块为不允许分解 077
6.7 快速打开块文件夹 079
6.8 使用AutoLISP创建标注样式 080
6.9 活用尺寸样式对齐直线 082
6.10 自动添加尺寸后缀 085
技巧篇
第7章 AutoLISP编程小技巧 088
7.1 活用变量编程 088
7.1.1 系统变量和GETVAR函数 088
7.1.2 系统变量和SETVAR函数 089
7.1.3 全局变量和局部变量 090
7.1.4 引数和定数 090
7.2 活用SSGET函数 091
7.2.1 SSGET函数的选择方式 092
7.2.2 SSGET函数的选择模式 092
7.2.3 活用一:锁定图层中的图形为非选择 093
7.2.4 活用二:选择图形中特定的对象 094
7.3 1e99的活用 095
第8章 利用AutoLISP打造自己的工作环境 097
8.1 常用系统变量的控制 097
8.1.1 对象捕捉:OSMODE 098
8.1.2 视觉样式:VSCURRENT 100
8.1.3 自动捕捉:AUTOSNAP 102
8.1.4 动态输入:DYNMODE 104
8.1.5 对象捕捉靶框:APERTURE 105
8.2 常用环境的控制 106
8.2.1 格栅的控制 106
8.2.2 世界坐标的切换 106
8.2.3 模型视图的切换 107
8.3 自制线型的自动下载 108
8.4 点的控制 110
第9章 切换键、鼠标宏、键盘宏的活用 112
9.1 什么是切换键 112
9.2 视觉样式的切换 113
9.3 参照文件卸载和重载的切换 114
9.4 鼠标宏和键盘宏 115
协同篇
第10章 共享程序,打造团队协同 122
10.1 协同共享的方法 122
10.1.1 第一种方法:云端共享 122
10.1.2 第二种方法:CUIX文件共享 123
10.2 AutoLISP文件夹 123
10.3 创建自制图标命令 124
10.4 关于主自定义文件 129
10.5 创建空白的局部自定义文件 131
10.6 加载局部自定义文件 132
10.7 添加命令 133
10.8 使用Autodesk Vault实现共享文件 136
第11章 鼠标点击大改造 138
11.1 鼠标的双击操作 138
11.2 自定义右键单击 139
11.3 创建双击专用CUIX文件 141
11.4 双击:启动点样式 142
11.5 双击:直线的复制 144
11.6 双击:隐藏尺寸界线 146
11.6.1 隐藏尺寸界线的方法 146
11.6.2 双击动作标注的设定 147
11.7 双击:创建中心线 149
11.8 块的复制和图案填充 150
11.8.1 块的复制 150
11.8.2 图案填充 151
第12章 配置文件和共享 152
12.1 配置文件的创建 152
12.2 电脑直接启动特定的配置文件 155
12.3 通过AutoLISP程序切换配置文件 157
应用篇
第13章 AutoLISP实例 160
13.1 StripMtext 160
13.2 切换点样式 161
13.2.1 两种点样式的循环切换 161
13.2.2 三种点样式的循环切换 162
13.3 批量打开和解冻图层 163
13.4 打开计时右键单击 164
13.5 批量为图层名称添加前缀 165
13.5.1 无定向添加前缀 165
13.5.2 定向添加前缀 166
13.6 快速打开项目文件夹 167
第14章 命令宏和工具选项板 168
14.1 命令宏是什么 168
14.2 活用VisualLisp 表达式 169
14.3 利用命令宏在任意处创建圆 171
14.4 将自制的命令宏放置到菜单栏 173
14.5 命令宏实例 177
14.5.1 保存文件为DXF格式 177
14.5.2 修剪功能的标准模式和快速模式切换 178
14.5.3 为标注的尺寸添加公差 178
第15章 AutoLISP编程的注意事项 179
15.1 暂时退避 179
15.2 简化命令栏显示 180
15.3 中断错误的处理 183
15.4 清空var 183
15.5 撤销标记UNDO 184
15.5.1 打包撤销功能 184
15.5.2 标记功能 186
15.5.3 UNDO功能的综合应用 187
15.6 使用Visual LISP编译文件 188
15.6.1 使用自带工具进行编译 188
15.6.2 使用AutoLISP代码进行编译 190
15.7 使用FAS保护器来进行加密 190
附录 191
附录1 AutoCAD默认快捷键一览表 191
附录2 AutoLISP常用函数一览表 193
附录3 错误代码含义一览表 200
附录4 本书中的AutoLisp程序一览表 202