CAD二次开发技术课件(一、二).ppt
《CAD二次开发技术课件(一、二).ppt》由会员分享,可在线阅读,更多相关《CAD二次开发技术课件(一、二).ppt(37页珍藏版)》请在三一办公上搜索。
1、河南工业大学机电工程学院,CAD二次开发技术,授课:韩莉莉,本课程要学习的内容,第1章 AutoCAD及其二次开发工具简介第2章 AutoLISP基本函数和绘图功能第3章 AutoLISP分支函数与循环结构第4章 AutoLISP输入输出函数和图形数据库 第5章 AutoLISP对话框设计技术,1.1 AutoCAD简介1.2 AutoCAD二次开发1.3 AutoCAD二次开发工具简介1.4 AutoLISP语言概述,第1章 AutoCAD及其 二次开发工具简介,1.1 AutoCAD简介,AutoCAD是美国Autodesk公司开发的通用CAD软件,1982年首次推出了AutoCAD R1
2、.0版本,经过不断的版本更新,现最新的是AutoCAD2011版本。AutoCAD是目前微机上应用最为广泛的通用交互式计算机辅助绘图与设计软件包。AutoCAD的强大生命力在于它的通用性、多种工业标准和开放的体系结构。用AutoCAD绘图速度更快、精度更高、而且便于个性,它已经在航空航天、造船、建筑、机械、电子、化工、美工、轻纺等很多领域得到了广泛应用,并取得了丰硕的成果和巨大的经济效益。,AutoCAD软件具有如下特点:(1)具有完善的图形绘制功能。(2)有强大的图形编辑功能。(3)可以采用多种方式进行二次开发或用户定制。(4)可以进行多种图形格式的转换,具有较强的数据 交换能力。(5)支持
3、多种硬件设备。(6)支持多种操作平台。(7)具有通用性、易用性,适用于各类用户。,1.1 AutoCAD简介,为了适用于各种产品的设计需求,多数CAD软件的功能都具有很高的通用性。但由于针对性不强,用户需求与CAD系统规模之间的矛盾日益增加,存在设计效率不高的问题。在CAD软件平台上,结合具体的应用需求,总结行业的设计知识和经验,开发面向行业和设计流程的CAD系统,这就是所谓CAD二次开发。AutoCAD的开放体系结构。允许用户采用高级编程语言对其进行扩充和修改。Autodesk公司自AutoCAD v2.18版至AutoCAD 2000的短短十几年间,就相继推出了三代二次开发工具。,1.2
4、AutoCAD二次开发,AutoLISP AutoLISP是1986年随AutoCADv2.18提供的二次开发工具。它是嵌入AutoCAD内部的一种人工智能语言。使用AutoLISP可调用几乎所有的AutoCAD命令。AutoLISP语言最典型的应用之一是实现参数化绘图程序设计,包括尺寸驱动程序和鼠标拖动程序等。另一个典型应用就是驱动AutoCAD提供PDB模块构成DCL文件,创建自己的对话框。AutoLISP适合于有能力的终端用户完成一些自己的开发任务。,1.3 AutoCAD二次开发工具简介,Visual LISP(VLISP)VLISP是AutoLISP的换代产品。与AutoLISP完全
5、兼容,并提供它所有的功能,是新一代的AutoCAD LISP语言。VLISP对语言进行了扩展,可以通过Microsoft ActiveX Automation接口与对象交互。作为开发工具,VLISP提供了一个完整的集成开发环境(IDE),包括编译器、调试器和其他工具,可以提高二次开发的效率。,1.3 AutoCAD二次开发工具简介,VBA VBA是2000版本后具备的功能。它通过AutoCAD ActiveX Automation接口对AutoCAD进行编程控制,是一个引入了对象的设计环境,为用户提供类似Visual Basic语言所拥有的功能,可以执行并存取 AutoCAD环境的所有资源,适
6、合编写中型的数据库类的CAD软件。,1.3 AutoCAD二次开发工具简介,ActiveX Automation是微软公司推出的一个技术标准,其作用是在Windows系统的统一管理下协调不同的应用程序,允许应用程序之间相互控制、相互调用。AutoCAD ActiveX技术提供了一种机制,可使编程者通过编程手段从AutoCAD的内部或外部来操纵AutoCAD。ActiveX是由一系列的对象组成,每一个对象代表了AutoCAD中一个明确的功能,如绘制图形对象、定义块和属性等等。ActiveX所具备的绝大多数AutoCAD功能,均以方法和属性的方式被封装在ActiveX对象中,只要使用某种方式,使A
7、ctiveX对象得以“暴露”,那么就可以使用各种面向对象编程的语言对其中的方法、属性进行引用,从而达到对AutoCAD实现编程的目的。,ARX ObjectARX是AutoDesk公司针对AutoCAD平台上的二次开发而推出的一个开发软件包,它提供了以C+为基础的面向对象的开发环境及应用程序接口,能真正快速的访问AutoCAD图形数据库。ObjectARX应用程序是一个DLL(动态链接库),共享AutoCAD的地址空间,对AutoCAD进行直接函数调用。所以,使用ARX编程的函数的执行速度得以大大提高。ARX 类库采用了标准的C+类库的封装形式,这也大大提高了程序员编程的可靠度和效率。由于是在
8、Windows及VC+编程环境里运行,所以,对开发者的编程能力要求较高。,1.3 AutoCAD二次开发工具简介,LISP(List Processing Language)是一种计算机的表处理语言,是在人工智能学科领域广泛应用的一种程序设计语言。AutoLISP语言是嵌套于AutoCAD内部,将LISP 语言与AutoCAD有机结合的产物。使用AutoLISP可直接调用几乎所有的AutoCAD命令。AutoLISP语言既具备一般高级语言的基本功能,又具有一般高级语言所没有的强大的图形处理功能。是当今世界上CAD软件中被广泛应用的语言之一。AutoLISP程序设计较简单易懂,易于掌握。适合于有
9、能力的终端用户完成一些自己的开发任务。Visual LISP是AutoLISP的换代产品。与AutoLISP完全兼容,并提供它所有的功能,是新一代的AutoCAD LISP语言。VLISP对语言进行了扩展,可以通过Microsoft ActiveX Automation接口与对象交互。,1.4 AutoLISP语言概述,一、AutoLISP的数据类型,整数:(-2147483648到2147483648)实数:(-1.79769310308到1.79769310308)符号:包括除“(”、“)”、“.”、“”、“;”以外的任何打印字符。长度没有限制,大小写等价。字符串:包含在一对双引号内的一组
10、字符 包括任何可以打印的字符。区别大小写。最大长度为100个字符,100以后的字符无效。没有任何字符的字符串为空串:”,1.4 AutoLISP语言概述,常用术语“符号”来指储存静态数据的一个符号名,如内建式函数和自定义函数。常用术语“变量”来指存储程序数据的符号名(只有当前类型没有固定类型,字母开头,不用内部函数名和保留字符,如:、.、;、(、)、pi、pause、T、nil等等)。AutoLISP的变量不需要事先定义。每一个变量都要消耗少量内存,故当变量值不再有用时重复使用变量名或将变量设置成nil是良好的程序设计习惯。其值保持不变的变量称为常量,如:Pi,整数、实数、符号、字符串在Aut
11、oLISP语言中称为原子。原子包括:数字原子、符号原子和串原子。,表:放在一对相匹配的左右括号内的一个或多个元素的集合。元素间用空格分开。有标准表和引用表两种类型。,一、AutoLISP的数据类型,1.4 AutoLISP语言概述,表有标准表和引用表两种类型;AutoLISP程序就是用标准表来表示的;引用表用作数据处理,相当于其它高级语言的数组,提供了保存各种数据的有效方法。引用表中的每一个元素可以是数字、符号、字符串,也可以是表。表可以嵌套。如:(23 1.5 A dfg”程序”(20.0 30.0 0.0)仅有两个元素,并用“.”分开表称为点对。点对常用于构造连接表。,原子和表是AutoL
12、ISP最基本的数据,总称为符号表达式(S-表达式)。,表有标准表和引用表两种类型;AutoLISP程序就是用标准表来表示的;引用表用作数据处理,相当于其它高级语言的数组,提供了保存各种数据的有效方法。引用表中的每一个元素可以是数字、符号、字符串,也可以是表。表可以嵌套。如:(23 1.5 A dfg”程序”(20.0 30.0 0.0)仅有两个元素,并用“.”分开表称为点对。点对常用于构造连接表。,文件描述符:打开文件时的返回值,相当于其它语言的文件号,用于数据的存取。选择集:选择集是一个或多个对象的集合。实体名(图元名):是AutoCAD系统在绘图过程中赋予所绘对象的一个数字标号。确切地说,
13、它是指向一个AutoCAD系统内部数据文件的指针。利用图元名,AutoLISP可以查找到图形对象的数据库记录,并对其进行各种方式的处理。,一、AutoLISP的数据类型,1.4 AutoLISP语言概述,AutoLISP语言中的一切设计成份都是以函数的形式给出的。它没有语句的概念或其它语法结构,执行程序就是执行函数,再调用函数。学习掌握AutoLISP语言,核心就是要掌握它的函数;学习AutoLISP函数要掌握的基本内容:(1)调用格式:即函数名、函数要求的参数个数和类型。(2)功能:即该函数的作用,它对其参数如何进行处理。(3)求值情况:即哪些参数被求值,哪些不被求值。(4)求值结果的返回值
14、类型,二、AutoLISP的函数,1.4 AutoLISP语言概述,这一点很重要,因为大多数函数的返回值都要被其它函数接受,而每个函数所需要参数都有特定的类型。因此只有搞清被调用函数的返回值的类型,才不会因用错函数的参数而导致错误。,AutoLISP程序是由一系列按顺序排列的标准表组成。每个标准表的第一个元素均为系统或用户定义的函数,其后的各元素为该函数的参数。如:,(setq x 25.0)(setq y 25.0)(+(*x y)x),AutoLISP的程序的书写格式:所有括号必须左右匹配;阅读AutoLISP程序时,按从左到右的规则进行;函数必须放在表中的第一个元素位置;一个表可以占多行
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CAD 二次开发 技术 课件
链接地址:https://www.31ppt.com/p-5417263.html