《2020(培训体系)2020年ALISP培训教程()》由会员分享,可在线阅读,更多相关《2020(培训体系)2020年ALISP培训教程()(90页珍藏版)》请在金锄头文库上搜索。
1、(培训体系)2020年ALISP培训教程()(培训体系)2020年ALISP培训教程()AutoLISP培训教程单元一:AutoLISP主角潇洒登场 一. AutoLISP 是何方神圣? 1、AutoLISP是AutoCAD的最佳拍檔! 2、AutoLISP内含于AutoCAD软件内,不用另外花钱买! 3、AutoLISP是强化AutoCAD最好、最直接的程序语言! 4、AutoLISP易学、易用,即使不会程序设计的AutoCAD使用者,都能在最短的 时间内,写出令人惊讶、赞叹的功能! 若说AutoLISP的出现,是替 AutoCAD 创造一片天的最大功臣,实不为过一点也不夸张! 5、Auto
2、LISP希望您去学习它、改善它、发挥它、享受它.真的!它的威力、魅力无穷! 二. AutoLISP 程序语言的特质分析:学习AutoLISP是非常容易的,对初学者而言,即使没有学习过任何的程序语言,都能很快的上手,写出精彩漂亮的AutoLISP程序!语法简单:不用特殊的变量宣告,非常富有弹性,比起其它的程序语言,它的语法可说是非常简单而有其独特的风格!功能函数强大:除一般性的功能函数外,又拥有为数不少控制配合AutoCAD的特殊函数,再加上AutoLISP可直接呼叫执行所有AutoCAD的指令,以及掌握运用所有的AutoCAD系统变量,功能之强大令人欣喜不已!撰写的环境不挑剔:只要是一般的文书
3、编辑软件都适用! 如:Windows的记事本、PE2、PE3、DW3、书中仙、汉书、EDIT.等直译式程序: 不用再作编译,即写即测、即测即用,马上能够在AutoCAD中响应效果,马上就有成就感!横跨各作业平台:悠然自得,虽然AutoCAD有DOS、Windows版本之分可是AutoLISP却可在不改写的原貌下,加载和执行!三.撰写 AutoLISP 的动机?1、欲强化 AutoCAD 原有指令时. 2、欲创造更有用的 AutoCAD 新指令. 3、欲简化繁琐的环境设定或绘图步骤时. 4、欲处理参数式绘图时. 5、欲做图面资料读文件、写文件. 6、欲做 AutoCAD 演示文稿展示时. 7、欲
4、达到真正灵活掌控 AutoCAD 时. 8、欲提升自己跨上 AutoCAD 高手列车时. 四.AutoLISP 的效益评估?1. 对公司负责人或设计主管而言:A. 也许某员工或干部花了20个小时撰写一个AutoLISP程序,表面上,这将近三天的时间,他连一张图都没有画,甚至可能偶有发呆、沉思,若此程序一天能够替公司绘图部门节省1小时绘图时间,那算一算,只要20天就抵销开发成本,而20天以后都是赚的,用的愈久,省的愈多! B. 若员工皆有此动力,在不影响正常工作,鼓励都来不及,那有压抑的道理,甚至仍要派遣优秀人员出去受训,学习更好的设计技巧和创意呢?! C. 千万不要因为您的不懂或压抑,SHOW
5、您的权威和POWER,如此,不但对员工造成打击,甚至您可能成为阻碍了公司计算机化进步的罪魁祸首 D. 当然,若要撰写的程序很多,内部设计人员的程序功力距离太远,达成需求的时间反而变得遥遥无期,那倒不如求助于市面上已有的相关 AutoCAD 支持软件。 2. 对设计人员而言:A. 得到一笔提升绩效奖金呢? 当然,无形中,AutoCAD 高手的封号也将黄功力又往前迈出了一大步,对个人的成长帮助匪浅,幸运的话,搞不好仍能够袍加身,不亦乐乎! B. 半桶水、响叮当,千万不要因为会写 AutoLISP 程序而自傲、孤僻、嚣张起来,功力的增长,只是让您有更多服务他人、服务公司的机会,若自恃过重,宁可不要!
6、 C. AutoLISP 程序功力的累进,是无远弗届的,千万不要孤芳自赏,人外有人,天外有天,也许您觉得是宝贝加三级的程序,只是其它设计师基本程序中的一部份罢了! D. 既然 AutoLISP 是 AutoCAD 的最大功臣,当然不会轻易被舍弃,如此,您的学习,保证不会白费! E. 精益求精、虚心求教、用心学习、观摩、决心成为高手 3.对程序本身而言:A. 少少的几行,却可能有大大满意的时候! B. 充份掌握了控制、创造 AutoCAD 的尚方宝剑,让您在 AutoCAD 的设计运作中得心应手,享受无比的快乐和成就感! 五.如何有效的学习 AutoLISP ? 1、 先由小程序着手,认识Aut
7、oLISP语法规定! 2、浏览所有的AutoLISP功能函数,重要的功能函数要熟记脑海,俗语说的好一回生,二回熟,除非您不用心,否则没有学不好的道理! 3、要懂得偷懒:不要认为在绘图的过程中,繁琐的步骤是合理的,困难的绘图过程是必须忍耐的,试着用AutoLISP解决见见! 4、多观摩别人的程序设计,吸取精华,像海棉一样=吸、吸、吸! 5、动手写程序比用眼睛见程序,更能够领略深记脑海! 6、随时随地整理您的程序,且加以批注,以免因时间的飞逝,当时用心的成果也烟消云散,忘的一乾二净! 7、决心是学好 AutoLISP 最重要的关键! 8、期许自己,要由操作者变成创造者! 返回单元二:AutoLIS
8、P的关键、基本结构及语法一、学好 AutoLISP 的关键、 基本结构和语法:1. AutoLISP 程序语言的特质 A.语法简单B.功能函数强大C.撰写的环境不挑剃D.直译式程序,即写即测、即测即用E.横跨 AutoCAD 各作业平台,悠然自得 (注:之上五点,读者能够参考上一章的剖析!)2.学好 AutoLISP 的关键:充份掌握语法结构&功能函数的搭配!3.重要的 AutoLISP 的基本语法结构规则1: 以括号组成表达式,、相对称左右括号数一定要成双成对规则2: 表达式型态:(操作数 运算子 运算子 运算子)1.1 操作数包括功能函数&自定函式1.2 运算子(自变量)包括:A.整数(I
9、nteger) 如 8,-17,500,9999 .B.实数(Real) 如 8.5,-17.456 .C.字符串(String) 如 AutoCAD,123D.串行(List) 如 (a b c),(x y)E.像素名称代码 如 F.档案代码 如 .G.选择群集代码 如 规则3:表达式中的运算子,能够是另一表达式或子程序规则4: 多重的括号表达式,运算的先后顺序是由内而外、由左而右规则5: 以档案型态存在的 AutoLISP 程序(ASCII 档案),其扩展名必须是.lsp规则6: 撰写的环境,只要是一般的文书编辑软件、记事本,可编辑 ASCII 档案者都适用规则7: 以 defun 功能函
10、数定义新的指令或新的功能函式规则8: 新定义的功能函式名称,若为C:函式名,则此函式可为 AutoCAD新指令规则9: 加载 AutoLISP 程序的作法:= 指令:后直接键入 (load LISP主檔名)规则10: AutoLISP 程序中,在分号 ;后的内容均为批注,程序不处理,适时的增加批注,将使程序更具可见性、学习性及完整性规则11: AutoLISP 最常用的变量型态是整数、实数、字符串、点串行四种,变量的型态依据设定值而自动定义,变量会一直储存该值,直到被重新设定值或绘图结束自动消失规则12:以 setq 功能函数设定变量值 (setq 变量名称 设定值)规则13:欲在 AutoC
11、AD 的环境中,查见一变量值,指令:下键入!变量名即可规则14:以(defun C:函式名(自变量 / 变量) .)程序中,程序中的变量若在/右边变量内,则称为区域变量,否则为整体变量二、学好 AutoLISP 的关键: 充份掌握语法结构&功能函数的搭配! 其时这个关键亦是学习其它程序语言的关键.*语法结构AutoLISP 的语法结构规定的且不多,变量不用事先定义及宣告,读者可熟记下一单元有关重要的 AutoLISP基本语法结构,十四条设计上要求的规则 *功能函数AutoLISP 之所以能功能如此强大,都有赖功能函数,其成员共约200个: 1、一般性函数170个 2、ADS 定义特殊函数9个
12、3、配合 DCL 交谈框设计函数 22个 各功能函数在使用上要求配合的运算子(自变量)型态,均有其规定,当然,您可不能乱给!例如: 指令:(+ 1 2 3 ABC)传回:error : bad argument type (自变量型态错误)因为+函数不接受字符串,而 abc 正是字符串指令:(rtos abc) 传回:error : bad argument type (自变量型态错误)因为rtos函数只接受实数转字符串详细内容可参考下一章快速浏览 AutoLISP 功能函数至于各功能函数详细的语法和实例应用,读者请参阅本书第三篇AutoLISP功能函数详解三、重要的 AutoLISP 的基本
13、语法结构:规则1:以括号组成表达式,左右括号数一定要成双成对、相对称请依序在指令:列 (或指令:) 后面直接键入以下表达式指令:(+ 1 2 3 4 5) 传回加总和15指令:(max 14.5 8.9 35) 传回最大值35指令:(menucmd p1=*) 显示拉下POP1指令:(getint Enter Real:) 传回Enter Real:要求输入一个实数指令:(setq a (* 12.5 4) 传回相乘值 50,同时设定给变量 a指令:!a 响应50 (注:! 号可用来查询变量值)指令:(min 75 a 63) 响应最小值50 (因为变量值a代表50)错误的范例:指令:(set
14、q a (* 12.5 4)1 传回1表示少了一个括号1 ) 此时,只要再补上一个 ) 即可指令:(setq a (* 12.5 42 传回2表示少了二个括号2 ) 此时,只要再补上二个 ) 即可规则2:表达式型态 (操作数 运算子 运算子 运算子 .)或 (函数(式) 自变量 自变量 自变量 .)或 (函数(式) 元素 元素 元素 .)1.1 操作数包括功能函数&自定函式功能函数: 如上练习中的 +、max、menucmd、getint、 setq、*、min,详细内容可参考下一章快速浏览 AutoLISP 功能函数&第三篇 AutoLISP功能函数详解自定函式: 由设计者自行定义的新函式或子程序1.2 运算子(又称自变量或元素)包括:A.整数(Integer): 如8,-17,500,9999正常范围: 2的16次方,介于-32768和+32767之间特殊范围: 若以 float 函数将其转为实数,则范围2的32次方, 介于-2147483648和+2147483647之间B.实数(Real): 如8.5,-17.456正常范围: 带有小数点的数,精度可达 14 位有效数字C.字符串(String): 如 AutoCAD,123,Enter Real:,7.5,正常范围