出版说明 2
前言 2
第一篇基础知识篇 2
第1章 AutoLISP语言概述 2
本章重点 2
1.1 AutoLISP语言简介 2
1.1.1 开发AutoCAD的重要工具 2
目录 2
1.1.2 AutoLISP的特点 3
1.2 AutoLISP数据类型 3
1.2.1 原子 4
1.2.2 表和点对 5
1.3 AutoLISP的程序结构 6
1.5 AutoLISP的内存分配 7
1.4 AutoLISP的运行环境 7
1.6 AutoLISP程序的执行过程 8
1.6.1 加载和卸载AutoLISP文件 8
1.6.2 运行AutoLISP程序 10
1.7 完整的AutoLISP例程 10
本章小结 13
第2章 AutoLISP的基本要素 14
本章重点 14
2.1 理解AutoLISP的变量和表达式 14
2.2 表达式的结构 15
2.2.1 数学表达式 16
2.2.2 矢量表达式 16
2.2.3 函数表达式 17
2.3.2 整型变量 20
2.3 AutoLISP的变量与类型 20
2.3.1 字符串型变量 20
2.3.3 实型变量 21
2.3.4 表型变量 21
2.3.5 其他类型 21
2.4 变量的应用 22
2.4.1 使用AutoLISP变量 23
2.4.2 使用AutoCAD系统变量 24
2.5 创建用户自己的变量和表达式 24
本章小结 25
第3章 AutoLISP基本函数 26
本章重点 26
3.1 数值函数 26
3.1.1 计算函数 28
3.1.2 布尔运算函数 33
3.1.3 三角函数 34
3.1.4 综合举例 35
3.2 字符串处理函数 36
3.2.1 求字符串长度函数strlen(string length) 36
3.2.2 字符串链接函数strcat(string catenation) 37
3.2.3 子串提取函数substr(substring) 37
3.2.4 字母大小写转换函数strcase 38
3.2.5 字符串模式匹配函数wcmatch 38
3.2.6 综合举例 39
3.3 条件和循环函数 40
3.3.1 关系运算函数 40
3.3.2 逻辑运算函数 42
3.3.3 EQ函数与EQUAL函数 43
3.3.4 条件函数 44
3.3.5 循环函数 47
3.4 表处理函数 50
3.4.1 表处理的基本函数 51
3.4.2 表的构造函数 53
3.4.3 表的循环处理函数 55
3.4.4 表的关联 56
3.4.5 综合举例 57
3.5 符号和函数处理函数 58
3.5.1 赋值函数 58
3.5.2 其他符号处理函数 60
3.5.3 函数处理函数 62
3.6 错误处理函数 66
3.7.1 ADS应用程序 71
3.7 应用程序处理函数 71
3.7.2 ARX应用函数 72
3.7.3 其他应用函数 73
3.8 综合举例 73
本章小结 79
第4章 实用工具函数 81
本章重点 81
4.1 查询和命令函数 81
4.1.1 command函数 82
4.1.2 系统及环境变量 84
4.1.3 系统配置控制 85
4.1.4 综合举例 87
4.2 显示控制函数 89
4.2.1 文字输出函数 90
4.2.2 控制菜单 92
4.2.3 控制图形和文本窗口 93
4.2.4 控制低层图形 94
4.3 获取用户收入函数 96
4.3.1 用户输入函数 97
4.3.2 用户提示函数 106
4.3.3 用户输入函数条件的控制 109
4.4 几何实用函数 111
4.4.1 几何计算函数 111
4.4.2 对象捕捉 113
4.4.3 文本范围 113
4.5 转换函数 114
4.5.1 字符串转换 114
4.5.2 角度转换函数 117
4.5.3 ASCⅡ转换 119
4.5.4 单位转换 120
4.5.5 坐标系转换 121
4.6 文件处理函数 123
4.6.1 文件的搜索与获取 123
4.6.2 文件的打开与关闭 124
4.6.3 文件的输入输出函数 126
4.7 设备的访问和控制 128
4.7.1 获取用户输入 128
4.7.2 数字校准 130
4.8 综合举例 130
本章小结 134
第5章 操作AutoCAD对象 135
本章重点 135
5.1 选择集处理函数 135
5.2.1 实体名操作函数 140
5.2 对象处理函数 140
5.2.2 实体数据操作 141
5.2.3 多段线和轻装多段线 149
5.3 扩展数据处理函数 150
5.4 获取符号表和词典 151
5.4.1 符号表 151
5.4.2 词典条目 154
5.6综合举例 155
本章小结 156
第二篇 开发环境篇 158
第6章 Visual LISP集成开发环境 158
本章重点 158
6.1 Visual LISP概述 158
6.2.2 退出Visual LISP集成开发环境 159
6.2 启动和退出Visual LISP集成开发环境 159
6.2.1 启动Visual LISP集成开发环境 159
6.3 Visual LISP集成开发环境介绍 160
6.3.1 Visual LISP菜单介绍 161
6.3.2 工具栏介绍 163
6.3.3 控制台操作 164
6.3.4 文本编辑器概述 166
6.3.5 加载和运行AutoLISP程序 167
6.4 文本编辑器主要功能及实现 169
6.4.1 文件/编辑/保存操作 169
6.4.2 代码分色显示 173
6.4.3 文本格式化 174
6.4.4 语法检查 178
6.5.1 监视窗口 181
6.5 调试程序 181
6.5.3 单步调试程序 183
6.5.2 断点 183
6.5.4 调试举例 184
本章小结 186
第7章 对话框设计 187
本章重点 187
本章典型效果图 187
7.1 对话框概述 188
7.2 对话框组件 188
7.3 用DCL定义对话框 189
7.3.1 base.DCL和acad.DCL文件 189
7.3.2 引用DCL文件 190
7.3.3 DCL语法 190
7.4.1 显示对话框 193
7.4 用Visual LISP显示对话框 193
7.4.2 预览错误处理 194
7.5 调整对话框的布局 195
7.5.1 在控件组中分配控件 195
7.5.2 调整控件间距 196
7.5.3 调整右端和底部的空间 196
7.5.4 调整加框行和列周围的空间 197
7.5.5 自定义退出按钮文本 197
7.6 设计指南 199
7.6.1 美观和功效 199
7.6.2 前后一致的设计和清晰明了的语言 199
7.6.3 用户控制 200
7.6.4 容错处理 200
7.6.6 考虑残疾用户 201
7.6.5 提供帮助 201
7.6.7 单词字母的大写 202
7.6.8 避免缩略语 202
7.6.9 布局 202
7.6.10 控件的大小和位置 202
7.6.11 禁用控件 203
7.6.12 嵌套对话框 203
7.6.13 隐藏对话框 203
7.6.14 提供默认值 203
7.6.15 处理键盘输入 203
7.6.16 预定义控件和控件组的指导 204
7.6.17 错误处理 206
7.7 对话框语言DCL详解 207
7.7.1 控件属性 207
7.7.2 DCL属性目录 208
7.7.3 对话框控件的DCL语法 214
7.7.4 设计对话框举例 231
7.8 对话框驱动程序 234
7.8.1 在AutoLISP中调用设计的对话框 234
7.8.2 动作表达式和回调 237
7.8.3 列表框/下拉框处理 241
7.8.4 图像处理 246
7.8.5 对话框嵌套 248
7.8.6 隐藏对话框 250
7.8.7 特定应用数据 252
7.9 综合举例 253
本章小结 256
本章典型效果图 258
本章重点 258
第8章 用AutoLISP生成零件图 258
第三篇 开发应用篇 258
8.1 参数化绘图概述 259
8.2 一个简单的参数化绘图的例子 259
8.3 理解参数化设计 263
8.4 开发参数化系统的基本要素 263
8.5 综合举例 264
8.5.1 参数化设计的一般步骤 264
8.5.2 绘制轴 264
8.5.3 绘制带轮 274
本章小结 285
第9章 AutoLISP在3D绘图中的应用 286
本章重点 286
本章典型效果图 286
9.1.2 用AutoLISP在三维绘图中的应用 287
9.1 三维绘图概述 287
9.1.1 三维造型的优越性 287
9.2 三维造型基础 288
9.2.1 UCS三维用户坐标系统 288
9.2.2 建立用户坐标系 289
9.2.3 创建三维实体 295
9.3 用AutoLISP进行三维参数化绘图 299
9.4 用AutoLISP进行曲线绘制 308
本章小结 314
附录 315
附录A command函数 315
附录B AutoCAD单位定义 321
附录C 错误提示 326
附录D AutoLISP的系统变量 329