蚂蚁文库
换一换
首页 蚂蚁文库 > 资源分类 > PDF文档下载
 

养成良好的AutoLISP书写习惯

  • 资源ID:55824893       资源大小:822.91KB        全文页数:20页
  • 资源格式: PDF        下载权限:游客/注册会员    下载费用:15积分 【人民币15元】
快捷注册下载 游客一键下载
会员登录下载
三方登录下载: 微信快捷登录 QQ登录  
下载资源需要15积分 【人民币15元】
邮箱/手机:
温馨提示:
支付成功后,系统会自动生成账号(用户名和密码都是您填写的邮箱或者手机号),方便下次登录下载和查询订单;
支付方式: 微信支付    支付宝   
验证码:   换一换

 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

养成良好的AutoLISP书写习惯

养成良好的养成良好的 AutoLISPAutoLISP 书写习惯书写习惯 众所周知,Lisp 是一种表结构语言,括号必须成对出现,在调试时往往为遗漏了一个括号大 费周折,所以,养成一个好的编程习惯是学好Lisp 所必须的。 ⑴选择一个较好的编辑器,这是一个基本条件,建议使用Visual Lisp 编辑器或 Lisplink 等专用编辑器,此类编辑器可以对函数突出显示。 ⑵按 Lisp(DCL)专有格式书写,并经常对程序进行“格式化”,及时发现语法错误,并 有利于调试是查找错误。 ⑶使用自定义函数,并辅助以适当得注释,在较大程序中按功能使用自定义函数可以使 得程序条理化。 autolispautolisp 的入门教程+的入门教程+autolispautolisp 函数函数 Lisp 是一门历史悠久的语言,全名叫LISt Processor,也就是“表处理语言”,它是由 John McCarthy于1958年就开始设计的一门语言。 和Lisp同时期甚至更晚出现的许多语言如Algo 等如今大多已经消亡, 又或者仅仅在一些特定的场合有一些微不足道的用途, 到现在还广为 人知的恐怕只剩下了 Fortran 和 COBOL。但唯独 Lisp,不但没有随着时间而衰退,反倒是一 次又一次的焕发出了青春,从Lisp 分支出来的 Scheme、ML 等语言在很多场合的火爆程度 甚至超过了许多老牌明星。那么这颗常青树永葆青春的奥秘究竟在哪里呢 如果你只接触过 C/C、 Pascal 这些“过程式语言”的话, Lisp 可能会让你觉得十分不同寻常, 首先吸引你眼球(或者说让你觉得混乱的)一定是Lisp 程序中异常多的括号,当然从现在 的角度来讲,这种设计的确对程序员不大友好,不过考虑到五六十年代的计算机处理能力, 简化语言本身的设计在那时算得上是当务之急了。 Lisp 的基本语法很简单,它甚至没有保留字(有些语言学家可能对这一点有异议,别怕,我 听你们的),它只有两种基本的数据,仅有一种基本的语法结构就是表达式,而这些表达式 同时也就是程序结构, 但是正如规则最简单的围棋却有着最为复杂的变化一样, Lisp 使用最 基本的语言结构定义却可以完成其它语言难于实现的、最复杂的功能。 废话少说,现在我们就来看看Lisp 语言中的基本元素。 Lisp 的表达式是一个原子atom或表list,原子atom是一个字母序列,如abc;表是由零 个或多个表达式组成的序列,表达式之间用空格分隔开,放入一对括号中,如 abc abc xyz a b c d 最后一个表是由四个元素构成的,其中第三个元素本身也是一个表。 正如算数表达式 11 有值 2 一样,Lisp 中的表达式也有值,如果表达式 e 得出值 v,我们说 e 返回 v。如果一个表达式是一个表,那么我们把表中的第一个元素叫做操作符,其余的元 素叫做自变量。 Word 资料 正如欧几里德的几何世界中有五个公理一样,我们在这里给出Lisp 世界中的 7 个公理(基 本操作符) quote x返回 x,我们简记为x atom x当 x 是一个原子或者空表时返回原子t,否则返回空表。在Lisp 中我们习惯用原子 t 表示真,而用空表表示假。 atom a t atom a b c atom t 现在我们有了第一个需要求出自变量值的操作符, 让我们来看看 quote 操作符的作用通 过引用quote一个表,我们避免它被求值。一个未被引用的表达式作为自变量,atom 将其 视为代码,例如 atom atom a t 反之一个被引用的表仅仅被视为表 atom atom a 引用看上去有些奇怪,因为你很难在其它语言中找到类似的概念,但正是这一特征构成了 Lisp 最为与众不同的特点代码和数据使用相同的结构来表示, 而我们用 quote 来区分它 们。 eq x y当 x 和 y 的值相同或者同为空表时返回t,否则返回空表 eq a a t eq a b eq t 例如我们有时想捕捉任意两点的中点,而不只是一条线上的中点,用系统自己的捕捉中点 (它要有辅助线)就不行了, 我们可以参考“捕捉虚中点.lsp”程序来实现。除程序中的语句要学外,动画中的自动找到所 有的全局变量并把它们 改为局部变量的方法很有用 动画中先画了一个六边形, 再画一个圆与它内接, 圆心就是捕 捉虚中点 AutoLispAutoLisp 概述概述 AutoLisp 的数据类型,它有 10 种数据类型,常见的有五种 整型INT实数型REAL符号型 SYM 字符串 STR表LISP 在 AutoLisp 中,最基本的数据类型称为符号表达式,也称为S-表达式,它是原子和点 对的总称,点对通常表示为表。 原子是一个一般符号系列, 有两种类型的原子, 一种称为数子原子 (简称“数”) , AutoLIsp Word 资料 可处理整数和实数, 其它不是“数”原子称为非数字原子, 它包括符号原子 (或称为文字原子) 和串原子。 注意0.4 不能写成.4。 符号原子的大小写是等效的。 符号原子可以包含下列字符以外的任何可打印字符。 正反括号用于定义表 句号用于作点对 分号用于注释的开始 ‘用作 QUOTE 函数的简写 双引号用作字符串常数的定界符 符号原子的长度没有限制,且所有的字符都是有意义的,但尽量不要超过6 个字符。 约束是一对符号和值,当将一个值赋给符号时,就说符号被约束到那个值。值 (而不是 符号)决定所代表信息的类型,故一个符号可以接受任何类型的值,其初始值为nil. 在 AutoLisp 中,有两个特殊的符号原子,即T 和 nil. 字符串的个数(不包括定界符)称为字符串的长度。字符串可以是任意长度,它们的存 储空间是动态分配的,但字符串常量的最大长度不超过100,长度为 0 字符串称为空串。 可以用“\nnn”的方式表示字符,其中nnn 为八进制。 \eEsc\n换行 \r回车\t制表符(Tab 节) 点对是由一个左括号,后接一个S-表达式和空格再接一个句点和空格和一个右括号。 表是指放在一对相匹配的左右括号中的元素有序集合。 表中的项称为表的元素, 表中的 元素可以是任意类型的 S-表达式,序号 0 到 n-1。如果嵌套,0 层,1 层. 表的长度,顶层元素的个数。 只有 nil 是表(’())又是原子。 表有两种类型标准表,引用表。 引用表是在表的前面冠以引用符号(’或 Quote对该表不求值。 标准表第一个元素的值必须是一个合法的已经存在的AutoLisp 函数定义,后跟调用 该函数的参数。 AutoLisp 采用”前缀表示法“即把运算符放在操作数之前, 而不是中间,并把运算符 (函数 名)和操作数(调用函数的参数)用圆括号括起来,以表的方式表示。 一个完整的 AutoLisp 程序往往是由一系列按顺序排列的S-表达式组成的。 如 defun plus x y x y x Set

注意事项

本文(养成良好的AutoLISP书写习惯)为本站会员(sunhongz117)主动上传,蚂蚁文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知蚂蚁文库(发送邮件至2303240369@qq.com或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们


网站客服QQ:2303240369

copyright@ 2017-2027 mayiwenku.com 

网站版权所有  智慧蚂蚁网络

经营许可证号:ICP备2024020385号



收起
展开