AutoLisp编程入门.docx

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
AutoLisp编程入门

AutoLisp编程基本指南:两数求和在命令行输入:(+ 2 3) (- 2 3) (* 2 3) (/ 2 3)如果直接输入(/ 2 3)则会显示0 因为2和3是整型所以AutoLisp把这些数字译为整型(AutoLisp进行了四舍五入)所以输入(setq x (/2.0 3))就可得到0.666667六位小数在命令行输入:!p则会显示p这个变量的值SETQ和变量Setq是来保存计算的结果的,相当于给一个变量赋值 例:(setq x (/2.0 3)) 这边x是变量就是把2.0/3的值赋给xSetq能完成多项“设置相等”例如:(setq x 1.0 y 2.0 z 3.0) 就是分别赋给x y z 赋值AutoLISP函数数学函数 (min 7 3 5 11) 就是取7 3 5 11这四个数的最小值 (setq minbr (min 7 3 5 11)) (sin minbr)数学函数 功能 +加 -减 *乘/除1+自增11-自减1FLX截取实数的整数部分FLOAT整数变为实数REM返回除法的余数EXPT指数SIN求弧度角的正弦COS求弧度角的余弦ATAN求两个数字的反正切注意:AutoLISP的角是弧度值而不是角度值。例如:45度的角的正弦值(setq rad (*(/ 45 180.0)pi))2.几何函数(setq p1 (1.3 5.7)) ‘表示指定2个(3个)的坐标值,这样AutoLISP就不会计算这些值了(setq p2 (7.5 3.1)) (setq p3 (9 4)) (setq p4 (0.1 2.5)) (distance p1 p2)(angle p1 p2)(inters p1 p2 p3 p4)(osnap p1 mid)TEXTBOX(查找一行文字的矩形外框) POLAR(指定距离和角度返回一个3D点)几何函数 功能 AngleX轴和由2个点定义的直线间的(弧度)夹角 Distance2点之间的3D距离 Polar在某一个(弧度)角度上的3D点 Osnap对某一个点应用对象捕捉模式后的3D点 Inters4个点定义的3D交叉点2.条件函数例:在一个绘制楼梯间的AutoLISP例程中,一部分程序检查层高是否大于8英寸:如果大于,就绘制出14级台阶,如果小于就绘制13级台阶。(if (height 96) (setq steps 14) (setq steps 13))条件函数注释=等于/=不等于小于=小于或等于大于=大于或等于If如果——那么——否则Cond查找真的表达式Repeat重复n次表达式While重复验证表达式直到假命题出现ForEach计算表达式中所有数值的表达式值3.字符串和转换函数(strlen “Using AutoCAD”)STRLEN函数将报告Using AutoCAD为13个字符,计算空格。可以看到Using AutoCAD被引号括起来表明它是字符串。如果输入(strlen Using AutoCAD),AutoLISP会试图查询变量Using和AutoCAD所包含字符串的长度。(strlen autocad “A software package”)(strlen using “the planet Earth”)(strlen using autocad) 返回34STRCAT函数通过混合变量和文字将字符串连接在一起并创建返回信息。(strcat autocad “used all over” using) 返回“A software package used all over the planet Earth ”字符串函数功能StrCase把所有的文字转换成大写或小写StrCat连接所有的字符串StrLen返回字符串中的字符数SubStr返回字符串的一部分WcMatch在字符串中匹配通配符如何把45度37分11秒即AutoCAD表示的45d37’11’’呢?这就要用到一个名称为ANGTOF的转换函数。它把包含格式化的角度的字符串转换为弧度(实数),如下例:(angtof “45d37’11\’’”1)返回0.796214 d表示度 ‘表示分 \’’表示秒 之所以这样用是为了不至于与后引号(”)混淆,后引号表示字符串的结束。ANGTOF函数能完成几种AutoCAD支持的单位之间的转换,而用状态值来表示转换的类型,本例中的1是状态值。几个用到模式值的AutoLISP函数如表:模式说明示例0十进制度45.37111度-分-秒45d37’11’’2分度100.12343弧度0.39644测绘单位N45d37’11’’E模式数值与AUNITS系统变量的数值一致。当您不知道单位的设置时,可以用该系统变量求得模式的数值。(angtof “45d37’11\

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档