《Visual LISP程序设计 技巧与规范》PDF下载

  • 购买积分:20 如何计算积分?
  • 作  者:陈伯雄,冯伟编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2002
  • ISBN:7115104131
  • 页数:722 页
图书介绍:本书是讨论基于Visual LISP for AutoCAD 2000/2000i/2002的程序设计技术,帮助专业设计用户进行专业辅助设计程序的制作和使用,达到精通Visual LISP程序设计,使AutoCAD真正成为自己的专业设计软件的目的。本书详细讨论了Visual LISP程序设计的基本方法和应用技巧,并提供了大量的专题应用范例,侧重于专业应用的方法、实际应用中的难点和解决方案的讨论,还补充和修正了Visual LISP在线帮助中的若干问题。本书既可以作为高等院校的有关教材、高级应用培训教材,也适合作为专业程序设计用户的参考用书。本书按照由浅入深、循序渐进的原则编写。力争做到初学者能够看懂,程序设计的老手也能得到启发,真正成为工程师自学程序设计的好朋友。

第1章 Visual LISP概况 1

1.1 启动Visual LISP 1

1.2 Visual LISP界面概述 1

1.2.1 菜单区 1

1.2.2 工具栏区 2

1.2.3 控制台窗口 3

1.2.4 状态栏 4

1.2.5 跟踪窗口 4

1.2.6 文本编辑器 4

1.2.7 Visual LISP的其他窗口 5

1.3 加载和运行AutoLISP程序 5

1.3.1 打开一个AutoLISP程序 5

1.3.2 加载并运行程序片断 5

1.3.3 加载并运行整个程序 6

1.4 使用扩展的AutoLISP函数 7

1.5 关闭Visual LISP 7

第2章 使用Visual LISP文本编辑器 8

2.1 文本编辑器概要 8

2.2 文本编辑器快捷菜单 8

2.3 文本编辑器的快捷键 9

2.3.1 修改文本 9

2.3.2 选定文本 10

2.3.3 浏览 11

2.3.4 格式化 11

2.3.5 移动和复制 12

2.4 查找、替换与书签 13

2.4.1 查找和替换 13

2.4.2 书签 14

2.5 语法结构分色和匹配 15

2.5.1 语法分色 16

2.5.2 匹配 17

2.5.3 使用自动匹配搜寻结果 18

2.5.4 按历史匹配 18

2.5.5 按系统匹配 20

2.6 程序代码格式化 20

2.6.1 Visual LISP程序格式样式 21

2.6.2 Visual LISP的注释 22

2.7 语法检查 22

2.7.1 检查括号匹配 22

2.7.2 用语法分色检查拼写错误 23

2.7.3 使用检查命令检查其他语法错误 23

第3章 调试程序 25

3.1 Visual LISP的调试器功能 25

3.2 调试器使用方法 25

3.2.1 调试准备 25

3.2.2 试验跟踪和分步调试过程 26

3.2.3 试验动态跟踪调试 27

3.3 使用Visual LISP调试功能 28

3.3.1 调试功能概况 28

3.3.2 VLISP中程序中断的基本概念 31

3.3.3 关于可继续中断循环 32

3.3.4 关于进入可继续中断循环后的调试方法 33

3.3.5 关于不可继续中断循环 34

3.3.6 断点操作 34

3.4 数据检验工具 36

3.4.1 打开和关闭日志文件 37

3.4.2 使用监视窗口 37

3.4.3 使用跟踪堆栈窗口 39

3.4.4 使用符号服务对话框 44

3.4.5 使用检验窗口 45

3.5 访问AutoCAD图形对象 48

第4章 AutoLISP程序设计 53

4.1 AutoLISP程序设计初步 53

4.1.1 AutoLISP比较容易学会和使用 54

4.1.2 AutoLISP适于给专业用户作开发工具 54

4.1.3 AutoLISP程序语法特点 57

4.1.4 AutoLISP程序与AutoCAD应用开发 58

4.2 编写AutoLISP专业用户功能的一般过程 59

4.2.1 专业应用程序设计的一般过程 60

4.2.2 专业应用程序设计的质量要求 62

4.2.3 专业应用程序设计的辅助手段 63

4.3 在命令行使用AutoLISP表达式 65

4.3.1 建立和引用AutoLISP变量响应命令提示 65

4.3.2 用AutoLISP表达式响应命令提示 66

4.4 在其他定制文件中使用VisualLISP表达式 67

4.4.1 在脚本文件中使用表达式 67

4.4.2 在菜单文件中使用表达式 68

4.4.3 AutoCAD.LSP、.MNL和AutoCADDOCLSP 69

4.4.4 将AutoLISP表达式放在某个图形对象中 70

4.5 给AutoCAD添加用户命令 70

4.5.1 用户自定义函数之一 70

4.5.2 (Command)(VL-CmdF)函数 71

4.5.3 在程序中引用AutoCAD命令时的注意事项 72

4.5.4 实例Ⅰ 74

4.5.5 实例Ⅱ 75

4.5.6 怎样描述关于点位的响应 76

4.5.7 简单响应“选择对象”的提示 78

4.5.8 向AutoCAD注册用户命令 79

4.5.9 重新定义AutoCAD原有命令 83

4.5.10 怎样描述关于长度数据输入的程序段 84

4.5.11 程序中数据的表达 84

4.5.12 数据与字串的转换问题 85

4.6 怎样在AutoLISP程序中组织和使用对象选择集 86

4.6.1 选择集中滤器的使用实例 86

4.6.2 在程序中对象选择集组建和对象的响应 88

4.7 给AutoLISP添加用户函数 90

4.7.1 Defun函数的再认识 90

4.7.2 形式参数和实际参数 91

4.7.3 自定义函数的必要性 91

4.7.4 制造自定义函数的返回值 93

4.7.5 自定义函数的变量表写法 94

4.8 Visual LISP程序可能的运行模式 96

4.9 在程序中使用DCL作界面 99

4.9.1 概论 99

4.9.2 DCL程序的语法 100

4.9.3 对话框的使用 101

4.9.4 察看对话框 101

4.9.5 制作第一个DCL 102

4.9.6 使用图像控件 104

4.9.7 DCL支持程序 108

4.9.8 DCL的检验和出错处理 108

4.9.9 DCL程序的简单控制和使用 113

4.9.10 用DCL查设计参数表和默认值控制 115

4.9.11 图像按钮的控制和使用 117

4.9.12 DCL结束的控制方法 120

4.9.13 自定义图像按钮集 121

4.9.14 列表盒与用户对有限参数的选择输入 123

4.9.15 列表盒内容设置的几个技术要点 124

4.9.16 不确定值的输入问题 130

4.9.17 关于DCL的自我动作描述问题 137

4.10 对象数据库的访问与数据使用 137

4.10.1 传统的数据库访问方法 138

4.10.2 找到要分析对象的图元名的方法 142

4.10.3 多段线对象数据的使用 143

4.10.4 用ActiveX数据结构访问数据库 146

4.10.5 CAGD在专业设计程序中的应用 148

第5章 AutoLISP应用程序设计技巧集锦 158

5.1 理解和正确使用AutoLISP的条件函数 158

5.2 正确理解和使用AutoCAD的数据库 160

5.3 对象描述双元表及其使用 166

5.4 利用绘图时建立的条件进行尺寸标注 169

5.5 永久型选择集和(HandEnt)函数 171

5.6 在AutoLISP中定义和使用多维数组 173

5.7 使用外部参数文件 174

5.7.1 其他应用程序生成的参数文件 175

5.7.2 AutoLISP程序专用的外部数据文件 176

5.7.3 读入外挂数据文件的结束处理 177

5.7.4 外挂数据文件与VLX程序包编译 177

5.8 设计手册查找的自动化 180

5.9 建立和使用非图形数据 185

5.9.1 属性格式的非图形数据结构 186

5.9.2 扩展的对象数据库 189

5.9.3 词典中的非图形数据 195

5.9.4 图形词典 197

5.10 自定义出错处理 201

5.10.1 设置公用的自定义出错处理功能 201

5.10.2 在自定义函数中,函数实参的检验和出错退出功能 203

5.10.3 在函数的定义中处理出错 205

5.11 参数化的、柔性的图形库 206

5.12 在Get族函数中使用关键词 208

5.13 怎样编写设计过程模拟程序 210

5.14 正确使用AutoCAD的系统变量 215

5.15 在程序中使用Fillet功能 216

5.16 怎样在一个程序中处理多个图形文件 218

5.17 根据图文件自动加载应用程序 222

5.18 自定义工具栏图标丢失问题 224

5.19 Read函数的灵活使用 225

5.20 Eval函数的用法 228

5.21 Set函数的用法 233

5.22 SsGet函数的用法 233

5.23 从另外一个图形数据库中获取对象信息 235

5.24 Boundarygon功能在程序中引用时的问题 235

5.25 LWPolyLine在程序中处理的问题和性能评价 238

5.26 沿圆或弧写字 246

5.27 在程序中控制文本字行的格式 248

5.28 AutoCAD2000之后的VLISP中,输入对话框的控制问题 252

5.29 VLISP程序中DOS功能的引用 253

5.30 已有块的更新处理问题 260

5.31 .MNL程序设计概要 269

5.32 =/Eq/Equal函数的区别 278

5.33 Not/Null/BoubdP函数的区别 280

5.34 曲线的任意点坐标的探测和曲线的转换 282

5.35 外部参照修剪的特殊用法和功能修补 284

5.36 在程序中字体高度设置问题 288

5.37 程序间公用数据的处理方法 290

5.38 图线遮挡的产生方法 297

5.39 组(Group)的数据分析 301

5.40 点选轮廓中间点得到轮廓索引名 304

第6章 工程--应用程序集的管理和编译 305

6.1 管理多个程序文件 305

6.1.1 VisualLISP的工程 305

6.1.2 工程中涉及到的文件类型 305

6.2 使用VisualLISP工程 306

6.2.1 创建一个新的工程 307

6.2.2 确定工程中AutoLISP源程序 308

6.2.3 调入文件的次序 308

6.2.4 选择编译器选项 309

6.3 工程文件操作 311

6.3.1 在工程中查找源文件中的内容 313

6.3.2 将工程放在应用程序包中 314

第7章 应用程序包的编译 315

7.1 程序包的编译和链接 315

7.1.1 VLISP的编译器 316

7.1.2 用(VLisp-Compile)函数编译程序 316

7.1.3 加载和运行已编译程序 317

7.1.4 编译后的函数调用问题 318

7.2 制作应用程序包 318

7.2.1 生成一个新的应用程序包 319

7.2.2 应用程序包的更新和修改 323

7.3 关于多图档下的程序设计与编译 324

7.3.1 变量空间 324

7.3.2 使函数在全部图档中有效 325

7.3.3 应用程序的独立变量空间 325

7.3.4 使具有独立变量空间的非C:函数对外部引用有效 326

7.3.5 在其他VLX程序中引用独立变量空间的函数 327

7.3.6 在独立变量空间的VLX中使用图档变量空间中的变量 328

7.3.7 使图档变量空间中的变量在所有图档中都有效 328

7.3.8 在各个变量空间之间进行数据共享 329

7.3.9 在多图档环境中的自定义错误处理 329

第8章 ActiveX的使用 331

8.1 ActiveX对象概论 332

8.2 AutoCAD的对象模型构架 332

8.2.1 对象的属性 332

8.2.2 对象的方法 332

8.3 ActiveX对象访问概论 333

8.3.1 访问应用程序对象 333

8.3.2 生成和访问图形对象 334

8.4 使用ActiveX方法的VLISP函数 338

8.4.1 查找所需要的函数 339

8.4.2 确定函数的参数 340

8.4.3 将数据转换为ActiveX类型 342

8.4.4 使用变体类型数据 343

8.4.5 使用安全数组 344

8.4.6 转换其他AutoLISP数据类型,为ActiveX方法准备数据 347

8.4.7 实例分析 348

8.4.8 确定方法或属性是否适用于某对象 350

8.4.9 使用集合(Collections)对象 350

8.4.10 释放对象和空出内存 357

8.4.11 转换对象的引用 358

8.4.12 ActiveX方法出错的处理 359

8.5 ActiveX与其他应用程序的交互 362

8.5.1 引入一个类型库 363

8.5.2 与应用程序建立联系 364

8.5.3 应用程序实例 366

8.5.4 不引入类型库使用ActiveX方法 369

8.5.5 访问和更新图形对象属性 371

8.5.6 使用参数带回返回值的ActiveX方法 373

8.6 ActiveX应用评价和定位 374

第9章 反应器的使用 390

9.1 反应器 391

9.1.1 反应器类型 391

9.1.2 反应器的回调事件 392

9.1.3 反应器的回调函数 393

9.2 生成反应器 395

9.2.1 生成对象反应器 395

9.2.2 给反应器添加应用数据 397

9.2.3 在多图档中使用反应器 397

9.2.4 查询、修改和删除反应器 398

9.3 临时或永久的反应器 401

9.4 对象反应器支持程序的自动加载 401

9.5 反应器应用注意事项 404

第10章 Visual LISP函数详解 406

10.1 AutoLISP数据类型 406

10.2 AutoLISP基本函数 408

10.2.1 应用程序管理函数 408

10.2.2 数学计算函数 410

10.2.3 等式和条件函数 413

10.2.4 出错处理函数 416

10.2.5 函数处理函数 417

10.2.6 表操作函数 421

10.2.7 字串处理函数 426

10.2.8 符号操作函数 429

10.3 AutoLISP实用函数 432

10.3.1 转换函数 432

10.3.2 设备访问函数 436

10.3.3 显示控制函数 437

10.3.4 文件操作函数 439

10.3.5 几何函数 443

10.3.6 命令与查询函数 444

10.3.7 用户输入函数 448

10.4 AutoLISP选择集和符号表函数 451

10.4.1 扩展的数据库操作函数 451

10.4.2 对象操作函数 451

10.4.3 选择集操作函数 454

10.4.4 符号表操作函数 458

10.5 AutoLISP内存管理函数 460

10.6 Visual LISP的扩展函数 461

10.6.1 ActiveX集合操作函数 461

10.6.2 ActiveX数据转换函数 462

10.6.3 ActiveX方法调用函数 467

10.6.4 ActiveX对象处理函数 467

10.6.5 ActiveX属性处理函数 470

10.6.6 应用程序对象处理函数 471

10.6.7 Visual LISP反应器函数 472

10.6.8 VLX变量空间函数 493

10.6.9 VLX变量空间通信函数 494

10.6.10 系统注册表函数 495

10.7 DCL操作函数 495

10.7.1 对话框打开与关闭控制函数 495

10.7.2 控件和属性操作函数 496

10.7.3 列表类控件操作函数 497

10.7.4 图像控件操作函数 498

10.8 DCL预定义控件 498

10.8.1 DCL控件的预定义属性 498

10.8.2 DCL控件的自定义属性 502

10.8.3 DCL的预定义动作控件 502

10.8.4 DCL的预定义控件簇 505

10.8.5 DCL的预定义修饰和提示性控件 507

10.8.6 DCL的预定对话框结束和出错处理控件 509

10.9 AutoLISP程序分析器 509

10.9.1 用分析器分析程序的操作过程 509

10.9.2 程序分析 511

10.9.3 主对话框中的有关功能 511

10.9.4 “选项”对话框中的有关功能 512

10.9.5 一些说明 512

10.9.6 程序分析规则文件 513

第11章 用户化和系统定制 514

11.1 概论 514

11.2 AutoCAD2002运行参数设置 514

11.2.1 “文件”选项卡的设置 514

11.2.2 “打开和保存”选项卡下的设置 517

11.2.3 AutoCAD启动条件的设置 520

11.3 操作系统参数设置和日常维护 521

11.4 几个操作系统的比较 524

11.5 线型库的定义与使用 525

11.5.1 在命令行生成线形库 525

11.5.2 直接编辑、生成带有文字片段的线形库文件 526

11.5.3 直接编辑生成带有形定义的线性库文件 527

11.6 多线样式库的定义与使用 528

11.6.1 多线样式命令 528

11.6.2 在命令交互中生成用户多线样式 528

11.6.3 多线样式库文件 530

11.7 AutoCAD.PGP文件的用户化 531

11.7.1 加入DOS命令 531

11.7.2 加入Windows命令的方法 532

11.7.3 定义常用命令的缩写 532

11.8 脚本文件设计与使用 533

11.9 形定义生成与字体文件 533

11.9.1 Shape的特点 533

11.9.2 形定义的生成 534

11.9.3 大字库字体文件格式介绍 535

11.10 自定义填充图案库 537

11.10.1 填充图案库文件的格式 537

11.10.2 生成自定义填充图案库 537

11.10.3 使用自定义填充图案库 539

11.10.4 特殊填充图案的处理 540

11.11 自定义符号库 540

11.12 实时助手的运行条件设置 542

11.13 几个限制 546

11.14 菜单定制于应用 547

11.14.1 菜单文件的加载和组合 547

11.14.2 单文件的基本构成 550

11.14.3 单项的基本语法 551

11.14.4 下拉菜单段(Pull-down menus) 551

11.14.5 光标菜单(cursor menu) 554

11.14.6 关联菜单(following shortcut menu) 554

11.14.7 菜单组名段 557

11.14.8 按钮和辅助菜单段 557

11.14.9 工具栏段 558

11.14.10 图像控件菜单段 562

11.14.11 菜单的帮助 566

11.14.12 加速键设置菜单段 566

第12章 AutoCAD2002新增功能和函数 569

12.1 关联标注 569

12.2 文字处理新功能 571

12.3 图形标准的设置与使用 573

12.4 属性处理新功能 577

12.5 新的Visual LISP函数 579

第13章 因特网上的问与答 581

13.1 议论 581

13.2 命令使用 620

13.3 程序设计 649

第14章 DXF组码参考 683

14.1 DXF基本概念 583

14.2 DXF通用组码 683

14.3 TABLET(符号表)中的DXF组码 686

14.4 BLOCKS(块定义表)中的DXF组码 696

14.5 ENTITIES(图形实体表)中的DXF组码 697

14.6 OBJECTS(命名对象表)中的DXF组码 714