第一章 认识AutoCAD 2000 1
1.1 AutoCAD 软件的发展 2
1.2 AutoCAD 2000的特点 2
1.3 AutoCAD 2000定制与开发功能 3
1.4 AutoCAD 2000增强或改进的定制特性 4
1.5 与二次开发相关的命令与约定 5
1.6 与二次开发相关的用户界面 5
1.6.1 AutoCAD主窗口 6
1.6.2 菜单 6
第二章 基本定制要求 13
2.1 AutoCAD 2000的环境设置 13
2.1.1 库搜索路径 14
2.1.2 简单目录结构 14
2.1.3 多配置文件 15
2.2 多图形文件目录 18
2.3 命令搜索过程 19
2.4 AutoCAD支持文件 20
2.4.1 ACAD.pgp(程序参数文件) 21
2.4.2 ACAD.mnl、mns、mnu、mnc、mnr(菜单文件) 21
2.4.3 *.lin、mln、pat(线型及填充图案定义文件) 21
2.4.4 *.scr(脚本文件) 21
2.4.5 *.psf和*.ps(PostScript支持文件) 22
2.4.6 *.dxf(图形交换文件) 22
2.4.7 *.unt(单位定义文件) 22
2.5 基本开发过程和方法 22
第三章 自定义命令 25
3.1 程序参数文件acad.pgp的结构和功能 25
3.2 定义外部命令 26
3.3 定义命令缩写和命令别名 28
3.4 重定义命令 38
3.5 定制在线文档 39
3.5.1 Windows帮助文件的编制过程和内容 40
3.5.2 运行AutoCAD帮助文件 41
4.1 线型文件的定义格式 43
第四章 线型和填充图案的定制与开发 43
4.2 标准线型文件 44
4.2.1 简单线型 45
4.2.2 复合线型 47
4.3 简单线型的开发 47
4.3.1 利用Linetype生成新线型 48
4.4 复合线型的开发 50
4.4.1 复合线型的格式 50
4.3.2 通过编辑线型文件生成新线型 50
4.4.2 复合线型的开发 52
4.5 线型的加载和调用 52
4.5.1 线型的加载 52
4.5.2 线型的调用和修改 54
4.6 图案填充 54
4.6.1 图案的构成 55
4.6.2 图案的定义格式 55
4.6.3 填充图案的开发 58
5.1 定义形文件 63
第五章 形与字体的定制与开发 63
5.1.1 形的定义格式 64
5.1.2 矢量长度和方向编码 65
5.1.3 特殊代码 65
5.2 编译形文件 70
5.3 加载形文件 71
5.4 调用形文件 72
5.5 高级形定义 72
5.6 形应用举例 73
5.7 文本字体 75
5.8 大字体文本 76
5.8.1 定义大字体 76
5.8.2 使用大字体文件 80
5.8.3 交替使用大字体 81
第六章 菜单的定制与开发 83
6.1 菜单文件的类型及使用 83
6.1.2 资源位映像 84
6.1.3 加载菜单文件 84
6.1.1 菜单文件类型 84
6.2 菜单文件的格式 86
6.2.1 菜单文件的结构 86
6.2.2 菜单文件的格式 87
6.2.3 菜单项的表示方法 88
6.3 菜单项的构造 89
6.3.1 Name Tags 89
6.3.3 Menu Macros 90
6.3.2 Labels 90
6.4 菜单组 96
6.5 用户定义菜单的开发 97
6.5.1 在ACAD.MNU中增加新菜单 97
6.5.2 建立用户菜单 97
6.5.3 运用基本菜单和局部菜单建立用户菜单 98
6.5.4 菜单项定义和菜单显示的关系 100
6.6 按钮菜单和辅助菜单 102
6.6.1 创建按钮和辅助菜单 102
6.6.2 按钮和辅助菜单的调用 104
6.6.3 反斜杠的特殊用法 105
6.7 下拉菜单和快捷菜单 105
6.7.1 创建下拉菜单 106
6.7.2 创建快捷菜单 107
6.7.3 下拉菜单及快捷菜单标签的语句 108
6.7.4 下拉菜单标题栏 108
6.7.5 级联子菜单 109
6.7.6 引用下拉菜单及快捷菜单 109
6.7.7 下拉菜单的交换和插入 111
6.8 图像控件菜单 112
6.8.1 图像控件菜单项 112
6.8.2 显示图像控件菜单 113
6.8.3 图像控件菜单示例 114
6.8.4 为图像控件菜单准备幻灯片 115
6.9 屏幕菜单 116
6.9.1 创建屏幕菜单 116
6.9.2 屏幕子菜单 117
6.9.3 菜单项标签 119
6.9.4 Menuctl系统变量 120
6.10 菜单特定帮助 120
6.11 快捷键 121
6.12 菜单开发举例 124
第七章 工具栏的定制与开发 133
7.1 工具栏的定义结构 133
7.2 定制工具栏 136
7.2.1 用工具栏对话框定制工具栏 136
7.2.2 用编辑菜单文件的方法定制工具栏 139
7.3 工具栏的编辑 140
7.3.1 显示和隐藏工具栏 140
7.3.2 增加和删除工具栏中的按钮 143
7.4 创建自定义按钮 144
7.4.1 创建BUTTON型按钮 144
7.4.2 创建FLYOUT型按钮 147
7.5 工具栏开发实例 148
8.1.1 系统变量MODEMACRO简介 151
8.1 状态栏的配置 151
第八章 DIESEL语言的应用 151
8.1.3 通过AutoLISP定义MODEMACRO 153
8.2 DIESEL在菜单中的应用 155
8.3 DIESEL在AutoLISP中的应用 157
8.4 DIESEL字符函数 158
8.5 DLESEL中的错误信息的显示 163
9.1.1 DXF文件的总体结构 165
9.1 DXF文件的格式 165
第九章 DXF 文件的应用 165
9.1.2 DXF文件的一般样式 167
9.1.3 DXF文件中组码和组值间的对应关系 168
9.2 Header节的定义和系统变量的设置 173
9.3 Classes(类节) 184
9.4 Table节(表节) 186
9.5 BLOCK(块节) 197
9.5.1 块定义格式 197
9.5.2 BLOCK节组码 198
9.6.1 ENTITIES节的定义格式 199
9.6 ENTITIES 节 199
9.5.3 ENDBLK节组码 199
9.6.2 应用于所有图形对象的组码 200
9.6.3 各实体专用组码 202
9.7 OBJECT节 213
9.7.1 OBJECT节的定义格式 213
9.7.2 OBJECT节的通用组码 214
9.8 THUMBNAILIMAGE节 214
9.9 读写DXF文件 215
9.9.1 读DXF文件 215
9.9.2 写DXF文件 217
第十章 幻灯片、脚本文件及POSTScript支持 219
10.1 幻灯片 219
10.1.1 创建幻灯片 220
10.1.2 观看幻灯片 220
10.1.3 创建幻灯片库 222
10.1.4 观看幻灯片库中的幻灯片 223
10.2.1 脚本文件的格式 224
10.2.2 创建脚本文件 224
10.2 脚本文件 224
10.2.3 运行脚本文件 225
10.2.4 启动AutoCAD时运行脚本文件 226
10.2.5 通过脚本文件建立幻灯片文件 227
10.2.6 通过高级语言生成脚本文件 228
10.3 PostScript支持 231
10.3.1 PostScript支持文件acad.psf 231
10.3.2 输出PostScript文件 235
10.3.3 PostScript高级处理过程 237
10.3.4 输入PostScript图像 238
10.3.5 使用PostScript字体 240
第十一章 ARX应用程序的开发 243
11.1 ADS与ARX 244
11.1.1 ARX应用程序的框架及其运行过程 245
11.1.2 ARX应用程序开发环境的设置 249
11.2 ARX类库简介 250
11.3 CAD图形数据库简介 254
11.3.1 图形数据库的结构与操作 254
11.3.2 重要的图形数据库对象及其操作 256
11.3.3 实体对象的属性与操作 258
11.3.4 容器对象的属性与操作 262
11.4 程序设计实例 265
第十二章 ActiveX Automation 开发技术 271
12.1 ActiveX技术 271
12.2 ActiveX Automation 272
12.3 Automation对象 273
12.4 AutoCAD 2000的对象模型 274
12.4.1 对象层次 274
12.4.3 Preferences对象 275
12.4.4 Document对象 275
12.4.2 Application对象 275
12.4.7 Plot和Utility对象 276
12.4.6 非图形对象 276
12.4.8 对象集合Collection 276
12.4.5 图形对象 276
12.5 Automation基本技术 277
12.5.1 引用AutoCAD对象类型库 277
12.5.2 设置应用程序全局变量 278
12.5.3 将Application对象与AutoCAD程序链接 279
12.5.4 使用Document对象 280
12.5.5 图形对象 280
12.5.6 编辑、查询图形对象 285
12.5.7 非图形对象的产生与编辑 286
12.6 Automation高级技术 287
12.6.1 交互输入 287
12.6.2 几何计算 290
12.6.3 SelectionSet(选择集) 291
12.6.4 实体过滤集 292
12.6.5 ViewPort(视口对象) 294
12.6.6 块处理 294
12.6.7 不同应用程序之间的焦点切换 297
12.7 程序设计实例 298
12.8 AutCAD 2000 中的VBA 300
12.8.1 VBA与VB程序比较 300
12.8.2 AutoCAD 2000的VBA集成开发环境(IDE) 302
12.8.3 AutoCAD 2000的VBA管理器 302
第十三章 AutoLISP语言及其程序设计 305
13.1 AutoLISP语言在AutoCAD中的作用 305
13.2 AutoLISP语言的特点 306
13.3 AutoLISP的程序结构 306
13.4 AutoLISP的运行环境 307
13.5 AutoLISP的内存分配 307
13.6 AutoLISP程序的执行过程 308
13.7 AutoLISP语言的数据类型 309
13.7.1 整数 310
13.7.2 实型数 310
13.7.3 符号 310
13.7.4 字符串 311
13.7.5 表 311
13.8 数值函数 312
13.8.1 计算函数 313
13.8.2 布尔运算函数 316
13.8.3 三角函数 317
13.9 表处理函数 318
13.9.1 提取表中数据的函数 318
13.9.2 构造和修改表的函数 320
13.9.3 提取并修改表中数据的函数 321
13.9.4 表的循环处理函数 321
13.9.5 其他表处理函数 323
13.10 符号处理函数 323
13.10.1 赋值函数 324
13.10.2 再求值函数 325
13.10.3 其他符号处理函数 325
13.11 函数处理函数 326
13.12 AutoCAD函数 329
13.12.1 交互式数据输入函数及相关计算函数(GET类输入函数) 329
13.12.2 图形处理函数 332
13.12.3 Command函数 334
13.12.4 坐标系转换及单位变换函数 335
13.12.5 查询和设置系统状态的函数 337
13.12.6 显示控制函数 339
13.13.1 字符与ASCII码互换函数 343
13.13.2 数字字符串互换函数 343
13.13 字符串处理函数 343
13.13.3 字符串处理函数 346
13.14 逻辑判断函数 347
13.14.1 相等验证函数 347
13.14.2 条件函数 349
13.14.3 循环函数 349
13.15 文件处理函数 350
13.15.1 搜索、获得文件的函数 350
13.15.2 打开、关闭文件的函数 352
13.15.3 用于文件输入输出的函数 352
13.16 实体和设备访问类函数 354
13.17 AutoCAD 2000的Visual LISP开发环境 359
13.18 AutoLISP程序设计综合举例 361
第十四章 AutoLISP对话框设计技术 365
14.1 对话框设计过程 365
14.2 用DCL定义对话框 368
14.2.1 控件及其属性 368
14.2.2 对话控件语言(DCL)语法简介 378
14.3 对话框PDB函数 378
14.3.1 对话框打开和关闭函数 379
14.3.2 控件和属性处理函数 381
14.3.3 列表框和弹出式列表框处理函数 384
14.3.4 图像控件处理函数 386
14.3.5 特定应用数据处理函数 389
14.3.6 对话框函数小结 389
14.4 对话框的AutoLISP驱动 390
14.4.1 驱动程序的操作过程 390
14.4.2 对话框控件驱动技术 391
14.5对话框设计综合举例 392
附录A AutoCAD 2000的系统文件 403
附录B AutoCAD 2000文件类型 407
附录C AutoLISP的错误代码 411
附录D AutoLISP错误信息 415
8.1.2 MODEMACRO的定义 1521