网站大量收购闲置独家精品文档,联系QQ:2885784924

AutoLISP的基本函数.pptVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
AutoLISP的基本函数

第三章AutoLISP的基本函数 AutoLISP没有语句的概念,运算符、控制结构和循环结构由函数实现。 3.1赋值与求值函数 3.1.1赋值函数setq AutoLISP 变量的数据类型采用指定给它的值的数据类型。在为变量指定新值前,该变量将一直保留原来的值。可以用 AutoLISP setq 函数为变量赋值。 (setq variable_name1 expr1 [variable_name2 expr2 ...]) setq 函数可以给多个变量赋值,但只返回最后一个表达式的值。如果在 Visual LISP 控制台提示中使用 setq,函数结果将显示在控制台窗口中。 _$ (setq val 3 abc 3.875) 3.875 _$ (setq layr EXTERIOR-WALLS) EXTERIOR-WALLS _$ _$ (setq c (setq a 2 b 3)) _$ 3 _$ Setq函数从左到右给变量赋值 例如:_$ (setq x 2.0 y 4.0 pt (list x y)) _$ (2.0000 4.0000) _$ 3.1.2赋值函数set 将符号名的值设置成一个表达式的值 (set sym expr) set 函数与 setq 类似,但 set 计算两个参数的值,而 setq 只计算第二个参数的值。 _$ (setq d c) C _$ (set d 2) 2 _$ c 2 _$ 注意:使用set函数时,符号的值不为符号出错。 _$ (setq d nil) nil _$ (set d 2) ; 错误: 参数类型错误: symbolp nil _$ 3.1.3禁止求值函数quote 等同于单引号(‘),调用格式为(quote expr),例如 (quote (+ 6 5))等同 ‘(+ 6 5) 注意求值与不求值的区别 例如 $ (setq a (+ 6 5)) (+ 6 5) _$ (setq a (+ 6 5)) 11 _$ 该函数在引用表中经常用到,例如 (setq pt (1.0 1.0 1.0)) ;正确 (setq pt (1.0,1.0,1.0)) ;错误 3.1.4再求值函数eval 求表达式值的值,也就是说求两次值。 (eval epxr) 例如 _$ (setq a (* 5 6)) (* 5 6) _$ (eval a) 30 _$ (setq a b) B _$ (setq b c) C _$ (eval a) C _$ (eval ‘a) ;quote只能阻止一次求值 B _$ (eval 5) ;对数求值结果为其自身 5 _$ (eval “(+ 3 4)”) ;对字符串求值结果为其自身 (+ 3 4) _$ 例:看两个例子的区别 数学函数 函数 说明 (+ [number number] ...) 返回所有数值的总和 (- [number number] ...) 从第一个数值中减去第二个和后面的数值,返回差值 (* [number number] ...) 返回所有数值的乘积 (/ [number number] ...) 用第一个数值除以后面其他数值的乘积,返回商值 (~ int) 返回参数的按位非(即 1 的补码为0) (1+ number) 返回参数加 1 后的结果 (1- number) 返回参数减 1 后的结果 (abs number) 返回参数的绝对值 (atan num1 [num2]) 返回一个数的反正切值(以弧度为单位) (cos ang) 返回一个以弧度表示角度的余弦值 (exp number) 返回常数 e(实数 2.718282...)的指定次幂的值 (expt base power) 返回一个数的指定次幂的值 (fix number) 截去实数的小数部分,将它转换成整数后返回该整数 (float number) 将一个数转换成实数后返回该实数 (gcd int1 int2) 返回两个整数的最大公约数 (log number) 以实数形式返回一个数的自然对数 (logand [int int ...]) 返回一组整数逻辑按位与 (AND) 的结果 (logior [int int ...]) 返回一组整数逻辑按位或 (OR) 的结果 (lsh [int numbits]) 返回一个整数进行指定位逻辑移位后的结果 (max [number number ...]) 返回给定的数中的最大值 (min [number

文档评论(0)

qiwqpu54 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档