第4章 AutoCAD应用基础1pptx_第1页
第4章 AutoCAD应用基础1pptx_第2页
第4章 AutoCAD应用基础1pptx_第3页
第4章 AutoCAD应用基础1pptx_第4页
第4章 AutoCAD应用基础1pptx_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第4章章 AutoCAD应用基础应用基础 机械CAD2例 机械CAD3 机械CAD44.1 二维标准图元创建4.2 三维坐标与观测4.3 三维建模基础4.4 绘制弯管实例 机械CAD54.5 Visual LISP参数化程序设计传统的交互式绘图一般需要用精确的尺寸值定义几何元素,输入的每一条线都必须有确定的位置,图形一旦建立,即使结构相似但想改变图形大小尺寸,只能对图形进行重建。而工程设计中,一方面,新产品的设计不可避免地需要多次反复修改,需要进行零件结构和尺寸的综合协调、优化、另一方面,对同一种基本结构形式的零部件,其图形结构具有一定的相似性,往往只是尺寸的大小不同,其图形随尺寸参数的变化

2、而相应变化。 机械CAD6因此希望有一种比交互式绘图更方便、更高效、更适合结构相似图形绘制的方法。参数化设计方法比较好地解决了这一问题。 机械CAD74.5.1 参数化编程原理参数化编程是指对基本结构相似的零部件,利用该类零件的图形结构具有相似性的特点,采用编程的方法编制程序,当给出图形各个部分的控制参数时便可快速得到所需要的零件图形的绘图方法。完整地描述一个图形需提供以下几方面的信息: 图形的几何参数(点的坐标等) 图形的结构参数(如轴的长度和直径) 几何参数和结构参数之间的关系 图形的拓扑关系 机械CAD8例l 几何参数l 结构参数l 参数间的关系l 拓扑关系 机械CAD9参数化编程步骤1

3、. 分析图形的拓扑关系及其变化规律,结合图的工程意义提炼出图形结构参数2. 建立图形结构参数与几何参数之间的关系,创建图形的参数化模型3. 编写、调试图形程序 机械CAD10控制参数的确定,应考虑:l唯一性l工程性l优先考虑零件规格、性能的参数l尽量减少参数的数量(文件或数据库存储标准件尺寸) 机械CAD11 机械CAD12轴径D键b键h轴t轮t1810331.81.41012442.51.812175532.37585221495.4 机械CAD13参数化图形库技术产品或工艺装备设计中,一般都要使用大量的标准件或成件,如螺钉、螺母、轴承等。它们都有国家标准、行业标准或企业自己的标准,供设计人

4、员使用。这些标准件在图纸上经常重复出现。所以,好的绘图设计系统一般要求提供基本的标准件图形库,并提供用户比较方便的建立和调研企业标准件图形库的开发手段,这是提高交互绘图效率的重要途径。 机械CAD14常用方法1)对于一些形状固定的图形,可以用图或符号的形式表示,对每一种具体规格的图形分别绘出,作为单独的子图或符号建立图库,单独调用。(相当于AutoCAD中的形和块) 机械CAD152)对于标准件和通用件,可以利用参数化编程的方法,编制相应的标准件图形生成程序库。 机械CAD163)利用参数化CAD系统交互式设计。 机械CAD174.5.2 Auto LISP语言概述 垃圾回收国内的程序员大多是

5、在 Java 语言中第一次感受到垃圾收集技术的巨大魅力的,许多人也因此把 Java 和垃圾收集看成了密不可分的整体。但事实上,垃圾收集技术早在 Java 语言问世前 30 多年就已经发展和成熟起来了,Java 语言所做的不过是把这项神奇的技术带到了广大程序员身边而已。 机械CAD18如果一定要为垃圾收集技术找一个孪生兄弟,那么, LISP 语言才是当之无愧的人选。 1960 年前后诞生于 MIT 的 LISP 语言是第一种高度依赖于动态内存分配技术的语言: LISP中几乎所有数据都以“表”的形式出现,而“表”所占用的空间则是在堆中动态分配得到的。 LISP 语言先天就具有的动态内存管理特性要求

6、, LISP语言的设计者必须解决堆中每一个内存块的自动释放问题(否则, LISP程序员就必然被程序中不计其数的 free 或 delete 语句淹没),这直接导致了垃圾收集技术的诞生和发展。 机械CAD19知道了LISP 语言与垃圾收集的密切关系,我们就不难理解,为什么垃圾收集技术的两位先驱者 J. McCarthy 和 M. L. Minsky 同时也是LISP 语言发展史上的重要人物了。J. McCarthy 是LISP 之父,他在发明LISP语言的同时也第一次完整地描述了垃圾收集的算法和实现方式; M. L. Minsky 则在发展 LISP语言的过程中成为了今天好几种主流垃圾收集算法的

7、奠基人。 机械CAD20LISP 是对现代软件开发技术贡献最大的语言。垃圾收集技术、数据结构技术、人工智能技术、并行处理技术、虚拟机技术、元数据技术以及程序员们耳熟能详的许多技术都起源于LISP语言。 J. McCarthy于1960年发表了一篇非凡的论文,他在这篇论文中对编程的贡献有如欧几里德对几何的贡献。他向我们展示了,在只给定几个简单的操作符和一个表示函数的记号的基础上, 如何构造出一个完整的编程语言。 McCarthy称这种语言为LISP, 意为List Processing。 机械CAD211.什么是Auto LISP Auto LISP = AutoCAD的绘图命令 + Commo

8、nLISP的基本部分LISP(List Processing Language)是一种计算机表处理语言,它是美国麻省理工学院的研究人员提出并于1960年设计实现的。 机械CAD222.Auto LISP语言特点( defun mycir() (setq r (getreal “输入圆半径:”) p (getpoint “输入圆心:”) ) (command “circle” p r) (setq p (* r r pi) (princ “n the area of the circle is :”) (princ p) (princ) ) 机械CAD231.表语言。Auto LISP程序一切构

9、造的基本形式是表。表是由圆括号括起来的,用空格分隔的若干个元素形成的数据结构形式。是函数表的集合。2.描述性语言。适于处理变长类型数据,不用先说明后使用,变量本身没有类型,由赋予值来定。3.前缀表达式。第一项一般是函数名。4.扩展了图形处理功能,适于设计绘图一体化。 机械CAD245.书写格式自由,不分大小写,元素之间由空格分隔,一个表可以写在多行上,也可以将多个表写在一行上,用分号作为注释符,括号需匹配。6.解释型求值语言,速度慢,难以保密。7.内嵌式不能脱离AutoCAD 运行,只能在AutoCAD的command状态下先装入程序,再执行。调试麻烦。 机械CAD253.数据类型Auto L

10、ISP 主要有以下几种数据类型:l 整型数l 实型数l 字符串l 符号l 表 机械CAD26*整型数 由09、+、-字符组成。*实型数 至少包含一位整数的带小数的数。用双精度浮点数表示。可以采用科学记数法。*字符串常数 用一对双引号括起来的若干个字符。可以包含转义字符, 如 n 。 *变量名和函数名统称为符号原子,简称符号。变量名 由字母开头,除圆括号、引号、逗号、句号之外的可打印字符。不分大小写,变量类型不用预先定义或说明,由所赋的值决定。 函数名 函数名代表某种运算,包括内部函数名和用户自定义函数名。 机械CAD28表表是指放在一对相匹配的左右括号中的一个或多个元素的有序集合。表中的每一个

11、元素可以是任何类型的原子或表,元素与元素之间用空格隔开。表中的元素是有序的。每一个元素都有一个序号,从左向右,第一个元素序号为0,第二个元素序号为1,第i个元素序号为i-1。表的大小为表的长度,即表中顶层元素的个数。没有任何元素的表称为空表,用()或nil表示。nil既是原子又是表。 机械CAD29表有两种基本类型:标准表和点对表。标准表是Auto LISP程序的基本结构型式,用于函数的调用,其中第一个元素必需是系统内部函数或用户自定义函数,其它的元素为该函数的参数。 机械CAD304.求值(执行运算)过程1对表中第一项元素求值应是函数名(* 4 5)2对表中各参数求值数,字符串,求值结果为本

12、身符号原子则以当前约束值作为求值结果3若标准表为多层嵌套,从最里层开始,最后返回顶层表的求值结果。(- (* 3 2) 1) 机械CAD315. 运行过程1编辑 任一文本编辑器,推荐Visual LISP2装入和运行 装入:(load “源文件名”) 机械CAD32文件中没有自定义函数,全部是标准表。则返回最后一个标准表的求值结果。(+ 3 2) (* 5 4)文件由用户自定义函数组成。则返回最后一个用户函数名,必须通过调用函数来执行。(defun dtr (a)(* a (/ pi 180.0)(load “mydt.lsp”)(dtr 90)既有自定义函数,又有其它标准表。则自动执行自定义

13、函数外的程序,并将自定义函数装入内存。 机械CAD336. Visual LISP的使用VLISP是用来加速设计AutoLISP程序的软件工具。VLISP是一个集成的开发环境,它可以使AutoLISP程序中的源代码编辑、修改、程序测试与调试更加容易。 机械CAD34不仅如此,VLISP还为AutoLISP增加了许多新函数,大大扩展了AutoLISP的能力。在对AutoCAD进行专业程序设计的应用范围内,已经比较接近ARX程序的能力,但程序的风险大大低于ARX,对编程者计算机专业知识的要求也大大低于ARX。 机械CAD35Visual LISP的界面 进入AutoCAD后,从Tools菜单的Au

14、toLISP中的visual LISP editor项,或在命令行输入VLISP或VLIDE即可以启动Visual LISP环境。 机械CAD36装载和运行程序1加载并运行程序片段:激活含有将要运行程序的文本窗口,选定要加载的源代码,按下工具条中的加载选定代码按钮,即可运行代码,并在控制台窗口显示最后一个表达式的结果。2加载并运行整个程序:激活含有将要运行程序的文本窗口,按下工具条中的加载活动编辑窗口按钮,将在控制台窗口中显示一条信息,说明调入程序的结果。然后在控制提示符后键入函数名(可能需要括号)并回车执行。 机械CAD37在VLISP将控制切换到AUTOCAD之前,如果AUTOCAD窗口已

15、经被打开,将正常切换到AUTOCAD窗口。但如果AUTOCAD当前是最小化状态,将不会自动切换到AUTOCAD窗口,而是在VLISP中显示一个特殊的鼠标指针,此时必须手动切换。 机械CAD38调试程序VLISP提供了许多有用的功能帮助调试程序。包括l 跟踪程序的执行;l 在程序执行中跟踪变量值;l 观察各个表达式的执行顺序l 检查在函数调用中的变量值l 中断程序的执行l 单步执行程序l 检查堆栈 机械CAD394.5.3 AutoLISP基本函数重点掌握:1函数的功能和作用2调用格式、函数名、参数个数及类型3求值情况4返回值类型 机械CAD401. 数值函数若参数多于两个,则从前到后依次运算,

16、并自动转换数据类型。 算术运算 + - 1+ 1- * / (+ 1 2) (+ 1 2 3) (+ 1 (+ 2 3) (- 10 1 2) (- 10 1.0 2) (- 1) 返回-1 (1+ 5)(1- 6) (* 1 2 3) (/ 9 3 2) (/ 9.0 3 2)注意整数除法,整数值的范围 机械CAD412.三角函数sin cos 角度用弧度表示,若是度,则要转化为弧度(sin ( * (/ PI 180.0) 45) sin45 两个参数:返回数1除以数2的反正切值 机械CAD423. 类型转换fix 截尾取整 (fix 2.3) 2float 转换为实型数 机械CAD434

17、. 赋值与求值setq 参数要求成对,奇数位上的参数必须是符号原子。奇数位不求值,偶数位求值。返回最后一个表达式的值。从左至右赋值。setq只是加一个内存地址指针,指向数据的内存结构。(setq x 10)(setq y (+ 1 2)quote 禁止求值 简写为给表赋值:(setq a (1 2 4 ) 机械CAD445. 表处理(1) 取表的内容(car 表) 顶层第一个元素(cdr 表) 除第一个元素外的表,点对表则返回第二个元素 (car (x y) x (cdr (x y) (y) (car (a b) c d) (a b)(setq lista ( x y z) )(car lis

18、ta) x (cadr lista) y (caddr lista ) z(caddr L) - (car (cdr (cdr L)? (a b c d e ) 求d 机械CAD45(last 表) 顶层最后一个元素(last (a b (d e) ) (d e)(nth n 表) 顶层第n个元素(从0开始)(nth 3 (a b c d) d 机械CAD46(2)构造表(cons 表达式1 表2) 表达式2是引用表则将表达式1的值加入表2的表头构成新表 (cons a (b c) (a b c)(list 表达式 ) 按原位置构成新表(list 1 2 3) (1 2 3)(list 1 (2 3) 4)(append 表) 将表中元素串在一起按原次序组成表(append (1 2) (3) (1 2 3) 机械CAD47(subst 新项 旧项 表)(subst q b (a b (c d) b)(a q (c d) q) (reverse 表) 倒序(reverse (1 (2 3) (4 5) 6)(6 (4 5) (2 3) 1) (

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论