第一部分 高级使用 1
第一章 AutoCAD 2000概述 1
1.1 AutoCAD 2000及其特点 1
1.1.1 轻松设计环境 1
1.1.2 数据访问能力和软件适用性的提高 2
1.1.3 扩展设计信息的沟通 2
1.1.4 一体化的打印输出 2
1.1.5 更强的定制和开发能力 3
1.2 安装及启动 3
1.2.1 安装AutoCAD 2000的系统要求 3
1.2.2 安装AutoCAD 2000的步骤 3
1.2.3 启动AutoCAD 2000 4
1.2.4 退出AutoCAD 2000 5
1.3 工作界面 5
1.3.1 标题栏和菜单栏 6
1.3.2 Standard工具条 6
1.3.3 其他工具条 7
1.3.5 信息栏(命令窗口) 8
1.3.6 状态栏 8
1.3.4 绘图区(视图窗口) 8
1.4 基本操作知识 9
1.4.1 鼠标操作 9
1.4.2 菜单操作 9
1.4.3 对话框操作 10
1.5 小结 11
2.1.1 查看图形及图形中的元素 12
第二章 AutoCAD 2000的新增功能 12
2.1 AutoCAD设计中心 12
2.1.2 使用调色板 14
2.1.3 使用AutoCAD设计中心打开图形 15
2.1.4 使用AutoCAD设计中心的查找功能 15
2.1.5 将图形元素插入打开的图形 16
2.1.6 使用Favorites目录下的Autodesk文件夹 17
2.2.1 在不同图形之间拷贝实体对象或实体对象的特性 18
2.2.2 控制多个图形的显示 18
2.2 多文档设计环境 18
2.2.3 关闭多文档模式 19
2.3 部分打开(Partial Open)和部分载入(Partial Load) 19
2.3.1 部分打开(Partial Open) 19
2.3.2 部分载入(Partial Load) 20
2.4 右键快捷菜单 21
2.4.1 绘图区的快捷菜单 21
2.4.2 控制默认菜单、编辑菜单、命令菜单的开关 22
2.5 小结 22
3.1.1 绘制直线(LINE) 23
3.1.2 绘制多边形(POLYGON) 23
第三章 基本的图形绘制与编辑 23
3.1 创建简单对象 23
3.1.3 徒手画线(SKETCH) 24
3.1.4 绘制圆形(CIRCLE) 25
3.1.5 绘制圆弧(ARC) 26
3.1.6 绘制椭圆(ELLIPSE) 27
3.1.7 绘制圆环(DONUT) 28
3.1.9 绘制实心多边形(SOLID) 29
3.1.8 画点(POINT) 29
3.1.10 创建面域(REGION) 30
3.2 编辑对象 31
3.2.1 构造选择集 31
3.2.2 对象群组操作 37
3.2.3 使用夹点 39
3.2.4 改变对象创建顺序(DRAWORDER) 41
3.2.5 对象拷贝 41
3.2.6 同心拷贝(OFFSET) 42
3.2.8 阵列(ARRAY) 43
3.2.7 镜像对象(MIRROR) 43
3.2.9 移动(MOVE) 45
3.2.10 旋转(ROTATE) 45
3.2.11 对齐(ALIGN) 46
3.2.12 删除(ERASE)及恢复删除对象(OOPS) 47
3.2.13 拉伸(STRETCH) 48
3.2.14 放缩(SCALE) 48
3.2.15 延伸(EXTEND) 49
3.2.16 改变对象长度(LENGTHEN) 50
3.2.17 剪切(TRIM) 51
3.2.18 断开(BBEAK) 52
3.2.19 分解(EXPLODE) 53
3.2.20 倒直角(CHAMFER) 53
3.2.21 倒圆角(FILLET) 54
3.3 小结 55
第四章 复杂对象的创建与编辑 56
4.1 多义线(Polyline)的绘制与编辑 56
4.1.1 绘制多义线(POLYLINE) 56
4.1.2 编辑多义线(PEDIT) 58
4.2 复合线(Multiline)的绘制与编辑 60
4.2.1 绘制复合线(MULTILINE) 60
4.2.2 编辑复合线(MLEDIT) 62
4.3 样条曲线(Spline)的绘制与编辑 66
4.3.1 绘制样条曲线(SPLINE) 66
4.3.2 编辑样条曲线(SPLINEDIT) 67
4.4.1 图案填充(HATCH、BHATCH) 68
4.4 图案填充的创建与编辑 68
4.4.2 编辑图案填充(HATCHEDIT) 71
4.4 小结 72
第五章 对象精确定位 73
5.1 设置栅格捕捉 73
5.1.1 用命令行方式设置栅格捕捉 73
5.1.2 用对话框方式设置栅格捕捉 74
5.1.3 设置栅格显示 74
5.2.1 目标捕捉的概念 75
5.2 目标捕捉 75
5.2.2 实时目标捕捉 77
5.2.3 自动目标捕捉 77
5.2.4 关于靶区(APERTURE)及标记(MARKER) 78
5.2.5 FROM目标捕捉方式 79
5.3 自动追踪(AutoTrack) 79
5.3.1 使用极角追踪(Polar Tracking) 80
5.3.2 设置极角追踪 80
5.3.3 使用目标捕捉追踪(Object Snap Tracking) 81
5.3.5 设置自动追踪 82
5.3.4 设置目标捕捉追踪 82
5.4 坐标过滤 83
5.5 小结 83
第六章 显示控制 84
6.1 刷新屏幕 84
6.1.1 重画(REDRAW) 84
6.1.2 重新生成(REGEN) 84
6.1.3 设置显示精度(VIEWRES) 85
6.2 显示缩放(ZOOM) 85
6.3 视区平移(PAN) 87
6.3.1 实时视区平移 87
6.3.2 指定位移以平移视区 87
6.4 使用鹰眼(DSVIEWER) 87
6.5 使用命名视图(VIEW) 88
6.5.1 保存命名视图 89
6.5.2 恢复命名视图 90
6.5.3 管理命名视图 90
6.6.1 多视窗的显示与设置 91
6.6 使用多视窗(VIEWPORTS) 91
6.6.2 分割或合并视窗 92
6.6.3 保存和恢复多视窗设置 92
6.7 视觉元素的开关 93
6.7.1 填充(FILL)模式 93
6.7.2 线宽(LINEWEIGHT)显示 93
6.8 小结 94
6.7.5 选择集高亮度显示 94
6.7.4 标记点(BLIP)显示 94
6.7.3 文字(TEXT)显示 94
第七章 管理图层和对象特性 95
7.1 图层管理 95
7.1.1 创建新层 95
7.1.2 设置当前图层 96
7.1.3 设置图层状态 97
7.1.4 设置图层特性 97
7.1.5 图层过滤 98
7.1.7 图层快速工具 99
7.1.6 图层的重命名与删除 99
7.2 颜色管理 105
7.2.1 对象的颜色 105
7.2.2 设置当前颜色 105
7.3 线型管理 106
7.3.1 载入线型 107
7.3.2 设置当前线型 107
7.3.3 线型重命名 107
7.3.4 删除线型 108
7.3.5 线型过滤 108
7.3.6 设置线型比例 108
7.4 线宽管理 108
7.4.1 设置默认线宽 109
7.4.2 设置当前线宽 109
7.4.3 线宽显示 109
7.5 改变对象特性 110
7.5.1 对象特性(Object Properties)工具条 110
7.5.2 对象特性(Properties)窗口 111
7.6 对象特性匹配 112
7.7 小结 113
第八章 块、属性及外部引用 114
8.1 块 114
8.1.1 块与图层的关系 114
8.1.2 块的定义 115
8.1.3 块的插入 117
8.1.4 炸开块 118
8.1.5 重新定义块 118
8.1.6 块的嵌套 118
8.2 属性 119
8.2.1 创建属性 119
8.2.2 编辑属性定义 120
8.2.3 编辑块中的属性 121
8.3 外部引用 121
8.3.1 外部引用管理器(Xref Manager) 122
8.3.3 透明的外部引用 123
8.3.2 插入外部引用 123
8.3.4 删除外部引用 124
8.3.5 重载外部引用 124
8.3.6 卸载外部引用 124
8.3.7 绑定外部引用 125
8.4 小结 126
9.1 文本样式 127
9.1.1 创建文本样式 127
第九章 文字标注 127
9.1.2 修改文本样式 128
9.1.3 设置当前文本样式 128
9.2 单行文本的创建与编辑 128
9.2.1 创建单行文本 128
9.2.2 编辑单行文本 129
9.3 多行文本的创建与编辑 130
9.3.1 创建多行文本 130
9.3.2 编辑多行文本 132
9.4 小结 133
9.3.3 引用外部文本文件 133
第十章 尺寸标注 134
10.1 尺寸标注的组成 134
10.2 创建尺寸标注 135
10.2.1 长度标注 135
10.2.2 坐标标注(DIMORDINATE) 137
10.2.3 角度标注(DIMANGULAR) 137
10.2.4 径向标注 138
10.2.6 指引标注(QLEADER) 139
10.2.5 圆心标注(DIMCENTER) 139
10.2.7 基线标注(DIMBASELINE) 140
10.2.8 连续标注(DIMCONTINUE) 141
10.2.9 快速标注(QDIM) 142
10.3 编辑尺寸标注 143
10.3.1 拉伸尺寸标注 143
10.3.2 剪切和延伸尺寸标注 144
10.3.3 用DIMEDIT命令编辑尺寸标注 144
10.3.4 用DIMTEDIT命令改变尺寸文本的位置及方向 145
10.4 创建和编辑标注样式 146
10.3.5 用Properties窗口编辑尺寸的特性 146
10.4.1 创建标注样式 147
10.4.2 编辑标注样式 148
10.5 小结 148
第十一章 图形查询功能 149
11.1 查询两点距离(DIST) 149
11.2 查询区域面积(AREA) 149
11.3 查询实体的质量特性(MASSPROP) 150
11.6 查询并设置时间(TIME) 151
11.4 查询点的坐标(ID) 151
11.5 查询实体特性(LIST) 151
11.7 查询图形文件的状态(STATUS) 152
11.8 小结 154
第十二章 三维坐标系及视图 155
12.1 用户坐标系UCS 155
12.1.1 坐标系和右手定则 155
12.1.2 用户坐标系的概念和创建方法 156
12.1.3 利用对话框设置用户坐标系UCS 160
12.2.1 三维视点 164
12.2 三维视图 164
12.2.2 三维特殊视点 167
12.2.3 三维动态轨道(3DORBIT) 167
12.2.4 动态视点命令 173
12.3 三维坐标输入 178
12.3.1 三维坐标 178
12.3.2 三维极坐标 178
12.4 小结 179
12.3.3 使用对象捕捉选取三维坐标点 179
第十三章 三维图形绘制 180
13.1 三维绘图简介 180
13.1.1 三维模型的类型 180
13.1.2 2.5D图形绘制 181
13.2 绘制三维线框 182
13.3 绘制三维面 183
13.3.1 二维填充和面域 183
13.3.3 设置三维面边缘的可见性 184
13.3.2 绘制三维面 184
13.3.4 绘制三维网格面 185
13.3.5 基本三维网格曲面 191
13.4 绘制三维实体 196
13.4.1 使用基本实体创建实体模型 196
13.4.2 由二维图形生成三维实体 202
13.5 小结 206
14.1 三维模型的编辑命令 207
14.1.1 三维旋转(ROTATE3D) 207
第十四章 三维图形编辑 207
14.1.2 三维镜像(MIRROR3D) 208
14.1.3 三维阵列(3DARRAY) 209
14.1.4 对齐(ALIGN) 210
14.1.5 编辑三维多义线 212
14.1.6 编辑三维多边形网格 213
14.1.7 分解多义线与网格(EXPLODE) 215
14.2 实体模型的编辑基本命令 216
14.2.1 三维倒角命令 216
14.2.2 三维实体的布尔运算 218
14.2.3 剖切实体(SLICE) 221
14.2.4 实体干涉(INTERFERE) 222
14.3 实体编辑的高级命令 223
14.3.1 编辑实体表面 224
14.3.2 编辑实体边界 231
14.3.3 编辑完整实体 232
14.4 小结 234
15.1 三维图像的类型 235
第十五章 三维图像生成 235
15.2 生成消隐图 236
15.2.1 HIDE命令 236
15.2.2 三维消隐线框命令 237
15.3 生成着色图 238
15.3.1 相关系统变量 239
15.3.2 着色命令 239
15.4 生成渲染图 241
15.4.1 渲染技术简介 241
15.4.2 创建光线(LIGHT) 242
15.4.3 设置材质 246
15.4.4 设置场景(SCENE) 251
15.4.5 渲染配置的对话框 251
15.5 渲染功能详解 254
15.5.1 设置背景(Background) 254
15.5.2 添加配景 255
15.5.3 雾化和深度效果(Fog) 257
15.5.4 渲染配置(Preferences) 258
15.5.5 统计信息(Statistics) 258
15.5.6 输出渲染图像 258
15.6 小结 260
第十六章 浮动视口与三维模型输出 261
16.1 浮动视口的概念 261
16.2 图纸布局中的浮动视口设置 261
16.2.1 用对话框设置浮动视口 261
16.2.2 用MVIEW命令设置浮动视口 262
16.2.4 视口特性 264
16.2.3 视口的缩放比例 264
16.3 控制视口的显示 265
16.4 三维视图的线宽设置 268
16.5 小结 270
第十七章 图形的打印输出 271
17.1 打印设备配置 271
17.1.1 添加打印机 272
17.1.2 删除打印机配置 273
17.1.3 编辑打印机配置 274
17.2.1 打印样式简介 275
17.2 打印样式 275
17.2.2 添加、删除打印样式表 277
17.2.3 编辑打印样式 278
17.3 打印参数设置 281
17.3.1 布局名及页面设置 282
17.3.2 打印设备 282
17.3.3 打印设置 283
17.3.4 打印预览 284
17.4.1 基本选项 285
17.4 图纸布局与绘图输出 285
17.4.2 Plot Device选项卡(打印设备) 286
17.4.3 Layout Settings选项卡(布局设置) 286
17.4.4 在布局中调用打印参数 288
17.5 小结 288
第十八章 AUTOCAD的网络功能 289
18.1 概述 289
18.2 从网上获取图形文件 289
18.3 建立超链接 291
18.4 使用ePlot发布DWF文件 292
18.5 DWF文件浏览工具WHIP!Plug-in 293
18.6 小结 294
第十九章 格式转换和数据交换 295
19.1 格式转换 295
19.1.1 AutoCAD图形DXF格式的转换 295
19.1.2 Export命令 296
19.1.4 使用幻灯片(Slides) 297
19.1.3 Import命令 297
19.2 Raster图像操作 298
19.2.1 概述 298
19.2.2 在图形中加入Raster图像 298
19.2.3 从网络上获取Raster图像 299
19.2.4 调整Raster图像 299
19.2.5 管理Raster图像 301
19.2.6 输出光栅文件 302
19.3.2 AutoCAD中OLE对象的特点 303
19.3.3 信息的链接与嵌入 303
19.3 用OLE生成复合文档 303
19.3.1 概述 303
19.3.4 AutoCAD信息在其他程序中的链接与嵌入 304
19.3.5 其他程序信息在AutoCAD中的链接与嵌入 304
19.4 小结 305
第二十章 定制技术 306
20.1 定制简化命令 306
20.2 定制线型、填充图案和字体 306
20.2.1 创建和修改线型 307
20.2.2 创建和修改填充图案 309
20.2.3 定制字体 312
20.3 定制菜单 315
20.3.1 菜单文件类型和结构 315
20.3.2 定制下拉菜单 316
20.4 定制工具条 320
20.4.1 创建工具条 320
20.4.3 定制工具条属性 321
20.4.2 添加或删除工具按钮 321
20.4.4 定制工具条按钮属性和图标 322
20.4.5 定制弹出式工具按钮 323
20.5 用DIESEL定制状态行 324
20.5.1 DIESEL的概念 324
20.5.2 定制状态行 325
20.5.3 用DIESEL的宏表达式 325
20.6 小结 326
21.1.1 编程环境 327
21.1 ObjectARX概述 327
第二十一章 ObjectARX编程初步 327
第二部分 二次开发 327
21.1.2 ObjectARX类库简介 328
21.1.3 系统配置要求 331
21.1.4 ObjectARX for AutoCAD 2000的安装 332
21.2 程序的入口与命令的注册 333
21.2.1 程序入口 333
21.2.2 命令的注册与注销 333
21.3 应用程序的加载与卸载 334
21.4.1 建立项目 335
21.4.2 项目设置 335
21.3.1 使用Load/Unload Applications对话框 335
21.4 一个简单的例程——HelloARX 335
21.3.2 使用ARX命令 335
21.4.3 编辑源程序 336
21.5 ObjectARX变量类型与常量值 338
21.5.1 数据类型及其定义 338
21.5.3 结果缓冲区和数据类型码 339
21.5.2 常量值 339
21.5.4 ObjectARX函数返回的结果类型码 341
21.5.5 用户输入控制位 341
21.6 小结 341
第二十二章 AutoCAD图形数据库概述 342
22.1 图形数据库的组成 342
22.2 图形数据库的关键元素 343
22.3 向图形数据库中加入对象 343
22.3.1 向图形数据库加入实体对象 343
22.3.2 向图形数据库加入图层对象 345
22.3.3 向图形数据库加入群组(GROUP)对象 346
22.4 多个图形数据库 347
22.5 数据库对象的ID 347
22.6 小结 348
第二十三章 图形数据库操作 349
23.1 创建图形数据库 349
23.2.3 在ObjectARX程序中保存图形数据库 350
23.2.2 用AutoCAD存盘命令时的文件格式 350
23.2.1 文件保存格式 350
23.2 保存图形数据库 350
23.3 用wblock()函数生成新的图形数据库 351
23.3.1 将当前数据库中所有实体对象写成新的数据库 351
23.3.2 将当前数据库中的某个图块写成新的数据库 351
23.3.3 在当前数据库中选择某些实体对象写成新的数据库 351
23.4 插入图形数据库 352
23.5 设置图形数据库的当前特性值 352
23.5.1 设置当前颜色值 352
23.5.2 设置当前线型值 353
23.5.3 设置当前线型比例 353
23.5.4 设置当前图层 353
23.6 图形数据库操作例程 354
23.7 小结 356
第二十四章 图形数据库中的对象的操作 357
24.1 对象的打开与关闭 357
24.1.1 对象的句柄、ID与C++指针 357
24.1.3 打开对象 358
24.1.2 对象的名称(ads_name) 358
24.1.4 对象打开模式 359
24.1.5 关闭对象 360
24.2 对象的删除 360
24.2.1 用AcDbObjcet::delete()函数删除对象 360
24.2.2 用AcDbObject::delete()函数删除对象 360
24.2.3 用acdbOpenObject()函数打开已删除对象 361
24.3 对象的隶属关系 361
24.4 对象的文件操作(filing) 361
24.5 小结 362
第二十五章 实体对象操作 363
25.1 实体对象的基本概念 363
25.2 实体对象的公共特性 363
25.2.1 实体对象的颜色(Color) 365
25.2.2 实体对象的线型(Linetype) 365
25.2.4 实体对象的可见性(Visibility) 366
25.2.3 实体对象的线型比例(Linetype Scale) 366
25.2.5 实体对象的图层(Layer) 367
25.3 实体对象的公共函数 367
25.3.1 目标捕捉函数 368
25.3.2 几何变换函数 369
25.3.3 求交函数 369
25.3.4 GS标记和子实体 370
25.4.1 创建一个简单实体 383
25.4 创建实体对象 383
25.4.2 创建一个简单的块表记录 384
25.4.3 创建一个带属性定义的块表记录 384
25.4.4 创建一个带属性的块的引用 386
25.4.5 遍历块表记录 389
25.5 复杂实体 390
25.5.1 创建复杂实体 390
25.5.2 遍历复杂实体 391
25.5.3 删除复杂实体 392
25.6 小结 393
26.1 符号表和词典的比较 394
第二十六章 容器对象操作 394
26.2 符号表 396
26.2.1 块表(Block Table) 397
26.2.2 层表(Layer Table) 397
26.2.3 迭代器(Iterators) 400
26.3 词典 401
26.3.1 群组和群组词典 402
26.3.2 MLINE样式词典 405
26.3.3 布局词典 405
26.3.4 创建词典 406
26.3.5 遍历词典中的对象 406
26.4 布局 407
26.4.1 布局对象 408
26.4.2 布局管理器 408
26.5 扩展实体记录(Xrecords) 409
26.6 小结 412
27.1 派生自定义类 413
第二十七章 创建ObjectARX自定义类 413
27.2 运行时类的标识 414
27.3 类声明宏 415
27.4 类实现宏 415
27.5 类的初始化函数 417
27.6 小结 417
第二十八章 从AcDbObject类派生自定义类 418
28.1 重载AcDbObject的虚函数 418
28.2 实现成员函数 419
28.3 对象的文件操作函数 420
28.3.1 实现DWG文件操作函数 421
28.3.2 实现DXF文件操作函数 423
28.4 对象引用 430
28.4.1 隶属引用 430
28.4.2 指针引用 438
28.5 PURGE操作 438
28.6 撤消(UNDO)和恢复(REDO) 439
28.6.1 自动创建UNDO记录 439
28.6.2 创建不完全UNDO记录 439
28.7 SubErase、sutOpen、subClose和subCancel 441
28.6.3 创建REDO记录 441
28.8 例程 451
28.9 小结 457
第二十九章 从AcDbEntity类派生自定义类 458
29.1 AcDbEntity派生类概述 458
29.2 重载实体的公共函数 460
29.2.1 重载worldDraw()和viewportDraw() 460
29.2.2 实现目标捕捉函数 461
29.2.3 实现夹点函数 463
29.2.4 实现拉伸点函数 465
29.2.5 几何变换函数 466
29.2.6 与其他实体相交 467
29.2.7 炸开实体 472
29.3 使用AcEdJig基类 472
29.3.1 函数AcEdJig::drag() 473
29.3.2 函数sampler()的实现 474
29.3.3 使用AcEdJig类的例程 475
29.4 小结 479
30.1 选择集与实体的名称 480
30.2 选择集操作 480
30.2.1 用acedSSGet()函数构造选择集 480
第三十章 选择集与实体的操作 480
30.2.2 用acedSSFree()函数释放选择集 482
30.2.3 选择集过滤 483
30.2.4 选择集的处理与查询 486
30.2.5 选择集的几何变换 489
30.3.1 获取实体名称 490
30.3 实体的操作 490
30.3.2 处理实体的数据 492
30.4 小结 496
第三十一章 和 AutoCAD交互的全局函数 497
31.1 调用AutoCAD命令 497
31.1.1 使用acedCommand()函数 497
31.1.2 使用acedCmd()函数 498
31.1.3 暂停以等待用户输入 498
31.1.5 查看和设置系统变量 499
31.1.4 指定拾取点 499
31.1.6 文件搜索 500
31.1.7 目标捕捉 500
31.1.8 几何工具 500
31.2 接收用户输入 501
31.2.1 接收用户输入的函数 501
31.2.2 用acedInitGet()函数控制用户的输入 501
31.2.4 用户中断 504
31.2.3 拖动选择集 504
31.3 数据转换 505
31.3.1 字符串的转换 505
31.3.2 单位的转换 506
31.4 字符型数据处理 507
31.5 坐标转换 507
31.6 显示控制 508
31.7 小结 509
32.1 通告的运行机制 510
32.2 使用瞬态反应者 510
第三十二章 通告(Notification) 510
32.2.1 使用数据库反应者(AcDbDatabaseReactor) 511
32.2.2 使用对象反应者(AcDbObjectReactor) 515
32.3 使用永久反应者 516
32.4 小结 521
第三十三章 代理对象 521
33.1 代理对象的概念 522
33.2 用户与代理对象 522
33.2.1 用LIST命令查询代理对象的信息 522
33.3 代理实体的可编辑性 523
33.2.2 选择是否显示代理对象提示对话框 523
33.2.3 控制代理实体的显示 523
33.4 小结 524
第三十四章 使用AcGe类库 525
34.1 AcGe类库的组成 525
34.2 常用的几何类 526
34.2.1 点(AcGePoint3d)和向量(AcGeVector3d) 526
34.2.2 矩阵(AcGeMatrix3d) 527
34.2.3 直线(AcGeLine3d)和平面(AcGePlane) 527
34.3 小结 528