- 1、本文档共682页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第1章
AutoLISP和Visual LISP
1.1 关于LISP
LISP是人工智能领域中广泛采用的一种程序设计语言。主要用于人工智
能、机器人、专家系统、博奕、定理证明等领域。
LISP也被称为符号式语言,因为它处理的对象是符号表达式。LISP语言
的程序和数据都是以符号表达式的形式来表示,因此,一个LISP程序可以把
另一个LISP程序作为它的数据来处理。
LISP语言语法简单,编写程序便捷、灵活,数据类型丰富。利用LISP语
言可以很容易地定义或调用新的函数。这就是Autodesk公司早在1985年的2.1
版本就引用了LISP语言的宏操作,在1986年的2.5版本就推出了比较完整的
AutoLISP语言的原因。
LISP在它几十年的发展过程中产生了多种版本,如MacLISP 、InterLISP
、ZetaLISP、和CommonLISP等。其中CommonLISP是近几年美国的几所大
学 (如麻省理工、斯坦福等)和工业界 (如Bell实验室、DEC公司、HP公司
等)的人工智能研究人员协同推出的,它概括了MacLISP 、InterLISP 、
ZetaLISP等版本的特点,因而功能较强且拥有其它版本的一些优点,是目前
LISP语言较完整的版本。
1.2 关于AutoLISP
AutoLISP是为二次开发AutoCAD而专门设计的编程语言,它起源于LISP
语言,嵌入在AutoCAD 的内部,是LISP语言和AutoCAD有机结合的产物。
AutoLISP 采用了和CommonLISP 最相近的语法和习惯约定,具有
CommonLISP 的特性,但又针对AutoCAD增加了许多功能。它既有LISP语
言人工智能的特性,又具有AutoCAD强大的图形编辑功能的特点。它可以把
AutoLISP程序和AutoCAD 的绘图命令透明地结合起来,使设计和绘图完全融
为一体,还可以实现对AutoCAD 图形数据库的直接访问和修改。
利用AutoLISP语言可以进行各种工程分析计算、自动绘制复杂的图形,
还可以定义新的AutoCAD命令、驱动对话框、控制菜单。为AutoCAD扩充具
有一定智能化、参数化的功能,可以使设计人员的主要精力用于产品的构思
和创新设计上,实现真正意义上的计算机辅助设计。
1.3 关于Visual LISP
Visual LISP是为加速AutoLISP程序开发而设计的软件开发
工具,是一个完整的集成开发环境。 Visual LISP包括文本编辑
器、格式编排器、语法检查器、源代码调试器、检验和监视工
具、文件编译器、工程管理系统、上下文相关帮助与自动匹配
功能和智能化控制台等。
Visual LISP用户界面良好,用过Microsoft软件的用户只需很
短的时间即可掌握它。
Visual LISP兼容以前的AutoLISP程序。在Visual LISP集成
环境下开发AutoLISP程序,就不再象以前那样编辑程序时,用
其它系统的文本编辑程序编写程序代码;调试程序时,需要用
户自己决定在程序的什么位置插入打印语句,以便查看变量的
内容;在程序运行正常后,再将插入的调试代码删除或注释掉
。
在VLISP集成环境下可以便捷、高效地开发AutoLISP程序,
可以经过编译得到运行效率更高、代码更加紧凑、源代码受到
保护的应用程序。
Visual LISP是新一代AutoLISP语言,它对AutoLISP语言进行
了扩展,可以通过Microsoft ActiveX Automation 接口与
AutoCAD对象交互,可以通过反应器函数扩展AutoLISP响应事
件的能力。
如果使用Visual LISP对AutoLISP扩展功能的部份,必须调用
vl-load-com 函数 ,或者将调用该函数的表达式写在
acad2006doc.lsp 文件内。
第2章
数据类型、表达式和函数
AutoLISP 的数据类型丰富,除了一般程序设计语言具有的整
型、实型、字符串等类型之外,还有表、函数、文件描述符、
AutoCAD选择集、AutoCAD 图元名、VLA对象、函数分页表和
外部函数等数据类型。
2.1 数据类型
1. 整型 (INT )
整型即整数,
文档评论(0)