AutoLISP从入门到精通初级教学教程(新手必备).doc

上传人:一*** 文档编号:572123 上传时间:2018-10-30 格式:DOC 页数:36 大小:225KB
返回 下载 相关 举报
AutoLISP从入门到精通初级教学教程(新手必备).doc_第1页
第1页 / 共36页
AutoLISP从入门到精通初级教学教程(新手必备).doc_第2页
第2页 / 共36页
点击查看更多>>
资源描述

《AutoLISP从入门到精通初级教学教程(新手必备).doc》由会员分享,可在线阅读,更多相关《AutoLISP从入门到精通初级教学教程(新手必备).doc(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、.AutoLISP 入门单元一:AutoLISP 主角登场 .2单元二:AutoLISP 的关键、基本结构及语法 .4单元三:快速分类浏览 AutoLISP 功能函数( 一) .10单元四:快速分类浏览 AutoLISP 功能函数( 二) .13单元五:轻松快速的掌握 AutoLISP 设计技巧 .16单元六:图元数据的取得与活用技巧(一) .21单元七:图元数据的取得与活用技巧(二) .25单元八:新手上路-参数设计的关键技巧 .32.单元一:AutoLISP 主角登场 一. AutoLISP 是何方神圣? 1、AutoLISP 是 AutoCAD 的最佳拍檔! 2、AutoLISP 内含于

2、 AutoCAD 软件内,不用另外花钱买! 3、AutoLISP 是强化 AutoCAD 最好、最直接的程序语言! 4、AutoLISP 易学、易用,即使不会程序设计的 AutoCAD 使用者,都能在最短的 时间内,写出令人惊讶、赞叹的功能! 若说 AutoLISP 的出现,是替 AutoCAD 创造一片天的最大功臣,实不为过一点也不夸张! 5、AutoLISP 希望您去学习它、改善它、发挥它、享受它.真的!它的威力、魅力无穷! 二. AutoLISP 程序语言的特质分析:学习 AutoLISP 是非常容易的,对初学者而言,即使没有学习过任何的程序语言,都能很快的上手,写出精彩漂亮的 Auto

3、LISP 程序!语法简单:不用特殊的变量宣告,非常富有弹性,比起其它的程序语言,它的语法可说是非常简单而有其独特的风格!功能函数强大:除一般性的功能函数外,又拥有为数不少控制配合 AutoCAD 的特殊函数,再加上AutoLISP 可直接呼叫执行所有 AutoCAD 的指令,以及掌握运用所有的 AutoCAD 系统变量,功能之强大令人欣喜不已!撰写的环境不挑剔:只要是一般的文书编辑软件都适用! 如:Windows 的记事本、PE2、PE3、DW3、书中仙、汉书、EDIT. 等直译式程序: 不用再作编译,即写即测、即测即用,马上可以在 AutoCAD 中响应效果,马上就有成就感!横跨各作业平台:

4、悠然自得,虽然 AutoCAD 有 DOS、Windows 版本之分但是 AutoLISP 却可在不改写的原貌下,加载与执行!三.撰写 AutoLISP 的动机?1、欲强化 AutoCAD 原有指令时. 2、欲创造更有用的 AutoCAD 新指令. 3、欲简化繁琐的环境设定或绘图步骤时. 4、欲处理参数式绘图时. 5、欲做图面资料读文件、写文件. 6、欲做 AutoCAD 简报展示时. 7、欲达到真正灵活掌控 AutoCAD 时. 8、欲提升自己跨上 AutoCAD 高手列车时. 四.AutoLISP 的效益评估?1. 对公司负责人或设计主管而言:A. 也许某员工或干部花了 20 个小时撰写一

5、个 AutoLISP 程序,表面上,这将近三天的时间,他连一张图都没有画,甚至可能偶有发呆、沈思,若此程序一天可以替公司绘图部门节省 1 小时绘图时间,那算一算,只要 20 天就抵销开发成本,而 20 天以后都是赚的,用的愈久,省的愈多! B. 若员工皆有此动力,在不影响正常工作,鼓励都来不及,那有压抑的道理,甚至还要派遣优秀人员出去受训,学习更好的设计技巧与创意呢?! C. 千万不要因为您的不懂或压抑,SHOW 您的权威与 POWER,如此,不但对员工造成打击,甚至您可能成为阻碍了公司计算机化进步的罪魁祸首 D. 当然,若要撰写的程序很多,内部设计人员的程序功力距离太远,达成需求的时间反而变

6、得遥遥无期,那倒不如求助于市面上已有的相关 AutoCAD 支持软件。 .2. 对设计人员而言:A. 得到一笔提升绩效奖金呢? 当然,无形中,AutoCAD 高手的封号也将功力又往前迈出了一大步,对个人的成长帮助匪浅,幸运的话,搞不好还可以黄袍加身,不亦乐乎! B. 半桶水、响叮当 ,千万不要因为会写 AutoLISP 程序而自傲、孤僻、嚣张起来,功力的增长,只是让您有更多服务他人、服务公司的机会,若自恃过重,宁可不要! C. AutoLISP 程序功力的累进,是无远弗届的,千万不要孤芳自赏,人外有人,天外有天,也许您觉得是宝贝加三级的程序,只是其它设计师基本程序中的一部份罢了! D. 既然

7、AutoLISP 是 AutoCAD 的最大功臣,当然不会轻易被舍弃,如此,您的学习,保证不会白费! E. 精益求精 、 虚心求教 、 用心学习、观摩 、 决心成为高手 3.对程序本身而言:A. 少少的几行,却可能有大大满意 的时候! B. 充份掌握了控制、创造 AutoCAD 的尚方宝剑,让您在 AutoCAD 的设计运作中得心应手,享受无比的快乐与成就感! 五.如何有效的学习 AutoLISP ? 1、先由小程序着手,认识 AutoLISP 语法规定! 2、浏览所有的 AutoLISP 功能函数,重要的功能函数要熟记脑海,俗语说的好一回生,二回熟,除非您不用心,否则没有学不好的道理! 3、

8、要懂得偷懒:不要认为在绘图的过程中 ,繁琐的步骤是合理的,困难的绘图过程是必须忍耐的,试着用 AutoLISP 解决看看! 4、多观摩别人的程序设计,吸取精华,像海棉一样=吸 、 吸 、 吸! 5、动手写程序比用眼睛看程序,更能够领略深记脑海! 6、随时随地整理您的程序,并加以批注,以免因时间的飞逝,当时用心的成果也烟消云散,忘的一乾二净! 7、 决心是学好 AutoLISP 最重要的关键! 8、期许自己,要由操作者变成创造者! .单元二:AutoLISP 的关键、基本结构及语法一、学好 AutoLISP 的关键、 基本结构与语法:1. AutoLISP 程序语言的特质 A.语法简单B.功能函

9、数强大C.撰写的环境不挑剃D.直译式程序,即写即测、即测即用 E.横跨 AutoCAD 各作业平台 ,悠然自得 (注: 以上五点,读者可以参考上一章的剖析!)2.学好 AutoLISP 的关键:充份掌握语法结构后的内容均为批注,程序不处理,适时的增加批注,将使程序更具可看性、学习性及完整性规则 11: AutoLISP 最常用的变量型态是整数 、 实数 、 字符串 、 点串行四种,变量的型态依据设定值而自动定义,变量会一直储存该值,直到被重新设定值或绘图结束自动消失规则 12:以 setq 功能函数设定变量值 (setq 变量名称 设定值)规则 13:欲在 AutoCAD 的环境中,查看一变量

10、值,指令: 下键入!变量名即可规则 14:以(defun C:函式名(自变量 / 变数) .)程序中 ,程序中的变量若在/右边变量内,则称为区域变量,否则为整体变量二、学好 AutoLISP 的关键: 充份掌握语法结构后的内容均为批注,程序不处理,适时的增加批注,将使程.序更具可看性、学习性及完整性范例: pp.lsp 内容如下:;本程序功能可快速画门、窗;设计者:QQ 博士;版权所有,欢迎使用(defun c:pp(): :; 以下为画门子程序: :; 以下为画窗子程序,: : : )规则 11:AutoLISP 最常用的变量型态是整数 、 实数 、 字符串 、 点串行四种,变量的型态依据设

11、定值而自动定义,变量会一直储存该值,直到被重新设定值或绘图结束自动消失规则 12:以 setq 功能函数设定变量值 (setq 变量名称 设定值)范例: (setq a 100) ;变量 a 值设定成整数 100(setq b 123.56) ;变量 b 值设定成实数 123.56(setq c “Good morning!“) ;变量 c 值设定成字符串(setq pt1 (getpoint “Enter POINT:“) ;变量 pt1 值设定成点串行(setq pt2 (list a b) ;此时,a 值是 100,b 值是 123.56 变量 pt2 值设定成点串行(100 123.5

12、6)(setq pt3 (297 210) ;变量 pt3 值设定成点串行 (297 210)注意: 直接设定成点串行时,不能省略单引号否则会被误认 (297 210)又是一个表达式, 297 是操作数而出错!规则 13:欲在 AutoCAD 的环境中,查看一变量值,指令: 下键入!变量名即可范例: 指令:(setq aa (+ 100 75) 传回:175指令:!aa 传回:175指令:(setq pp (list 90 50) 传回:(90 50)指令:!pp 传回: (90 50)指令:!ww 传回: nil 空值无设定规则 14:以(defun C:函式名(自变量 / 变数) .)程序

13、中 ,程序中的变量若在/右边变量内,则称为区域变量,否则为整体变量(注:在 AutoLISP 中,未赋予值的变量,其值皆响应 nil)区域变量于此程序执行完毕后,其值自动消失整体变量于此程序执行完毕后,其值仍然存在范例: test.lsp 内容如下(defun c:tt(/ sa sb sc)(setq sa 100)(setq sb 20)(setq sc 10)(setq sd (+ sa sb sc).回到: 指令:键入(load“tt“) 传回: c:tt指令:tt 传回:130指令:!sa 传回:nil ( 属区域变量)指令:!sb 传回:nil (属区域变量)指令:!sc 传回:n

14、il ( 属区域变量)指令:!sd 传回:130 (属整体变量 ).单元三:快速分类浏览 AutoLISP 功能函数(一)一、看到以下那么多的 AutoLISP 功能函数,洋洋洒洒 17 大类:1、您第一个念头,一定惊讶怎么会那么多,您可能快吓坏了! 2、您第二个念头,一定会想那么多,怎么记得下来,您可能快放弃了!二、其实,您应该要很兴奋而充满信心的,怎么说呢?1、您有那么多的大将协助您撰写 AutoLISP 程序,当然左右又逢源,不但轻松, 而且要快乐的不得了! 2、这些函数只要您先浏览有印象, 要用时,再翻查该函数,了解用途语法再加入到您的程序中就可以了! 3、常用的函数,写久、用久后,自

15、然会深深牢记脑海,想忘都很难,不常用的函数, 若硬要您记下来,相信连高手都很困难,更何况是初学的您! 4、您不用再摸不着头绪了,因为您幸运的拥有了本书,就是您成功的开始! 第一类 数学运算功能函数项目函数语法 传 回 1.1 (+ 数值 数值 .) 累计实数或整数数值 1.2 (- 数值 数值 .) 减去数值 1.3 (* 数值 数值 .) 所有数值乘积 1.4 (/ 数值 数值 .) 第一个数值除以第二个以后数值的商 1.5 (1+ 数值) 数值+1 1.6 (1- 数值) 数值 -1 1.7 (abs 数值) 数值的绝对值 1.8 (atan 数值) 反正切值 1.9 (cos 角度) 角

16、度的余弦值 ,角度值为弧度。 1.10 (exp 数值) 数值的指数 1.11 (expt 基数 指数) 基数的指数值 1.12 (fix 数值) 将数值转换为整数值 (取整)1.13 (float 数值) 将数值转换为实数值 1.14 (gcd 数值 1 数值 2) 二数值的最大公因子 (greatest common divisor)1.15 (log 数值) 数值的自然对数值 (相当于 ln,e=2.71828182845904523)1.16 (max 数值 数值 .) 数值中的最大值 1.17 (min 数值 数值 .) 数值中的最小值 1.18 pi 常数 p ,其值约为 3.1415926 1.19 (rem 数值 1 数值 2) 二数值的相除的余数 (remainder )1.20 (sin 角度) 角度的正旋值 ,角度值为弪度 1.21 (sqrt 数值) 数值的平方根 第二类 检验 & 逻辑运算功能函数项目 函数语法 传 回 2.1 (= 表示式 1 表示式 2) 比较表示式 1 是否等于表示式 2 适用数值及字符串 2.2 (/= 表示式 1 表示式 2) 比较表示式 1 是否不等于表示式 2 2.3 ( 表示式 1 表示式 2) 比较表示式 1 是否 小于 表示式 2 2.4 (= 表示式 1 表示式 2) 比较表示式 1 是否 =小于等于 表示式 2

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁