AutoLisp函数1/8
AutoLisp函数
一、数学运算功能函数
1.l(十 数值 数值…)返回:累计实数或整数数值 1.2(一 数值 数值…)返回:差值 1.3(* 数值 数值…)返回:所有数值乘积
1.4(/ 数值 数值…)返回:第一个数值除以第二个以后数值的商 1.5(l十 数值)返回:数值十l l. 6(1— 数值)返回:数值一l l.7(abs 数值)返回:数值的绝对值 1.8(atan 数值)返回:反正切值
1.9(cos 角度)返回:角度的余弦值,角度值为弧度 1.10(exp 数值)返回:数值的指数 1.11(expt 底数指数)返回:底数的指数值 1.12(fix 数值)返回:将数值转换为整数值
1.14(gcd 数值1 数值2)返回:两数值的最大公因数 1.15(log 数值)返回:数值的自然对数值 1.16(max 数值 数值…)返回:数值中的最大值 1.17(min 数值 数值…)返回:数值中的最小值 1.18 pi 常数∏,其值约为3.1415926 1.19(rem 数值 1数值 2)返回:M数值的相除的余数 l.20(sin 角度)返回:角度的正旋值,角度值为弧度 1.21(sqrt 数值)返回:数值的平方根
二、检验与逻辑运算功能函数
2.l(= 表达式1 表达式2)比较表达式1是否等于式2,适用数值及字符串 2.2 (/= 表达式1 表达式2)比较表达式1是否大于等于表达式2 2.3(< 表达式1 表达式2) 比较表达式1是否<小于表达式2 2.4(<= 表达式1 表达式2)比较表达式1是否<一小于等于表达式2 2.5(> 表达式1 表达式2) 比较表达式1是否>大于表达式2 2.6(>= 表达式1 表达式2) 比较表达式1是否大于等于表达式2 2.7 (~ 数值)返回:数值的位 not值,(1的补码) 2.8 (and 表达式1 表达式2…)返回:逻辑and的结果 2.9(boole 函数 整数 整数…)返回:位式布尔运算
AutoLisp函数2/8
2.10(eq 表达式1 表达式2)比较表达式1与表达式2是否相同,适用列表比较(实际相同)
2.11(equal 表达式 1表达式 2[差量])比较表达式 1与表达式 2是否相同,差量可省略(内容相同)
三、转换运算功能函数
3.l(angtof 字符串[模式])返回:角度值的字符串转成实数 3.2(angtos 角度[模式[精度]])返回:角度转成的字符串值 3.3(atof 字符串)返回:字符串转成实数值 3.4 (atoi 字符串)返回:字符串转成整数值
3.5 (cvunit 数值 原始单位 转换单位)返回:数值转换单位后的值转换根据acad.nut文件
3.6(distof 字符串 [模式])返回:根据模式将字符串转成实数值 3.7(itoa 整数)返回:整数转成字符串
3.8(rtos 数值 模式[精度])返回:实数转成字符串 3.9 (trans 点 原位置 新位置[位移]) 返回:转换坐标系统值
四、列表处理功能函数
4.1 (append 列表 列表……) 结合所有列表成一个列表
4.2(assoc 关键元素 联合列表)根据关键元素找寻联合列表中关系信息 4.3 (car 列表)返回列表中的第一个元素,通常用来求X坐标 4.4(cadr 列表)返回列表中的第二个元素,通常用来求y坐标 4.5(caddr 列表)返回列表中的第三个元素,通常用来求Z坐标 4.6(cdr 列表)返回:除去第一个元素后的列表 4.7(cons 新元素 列表)返回:将新元素添加到列表
4.8(foreach 名称 列表 表达式)返回:将列表的每一元素对应至名称再根据表达式执行响应
4.9(length 列表)返回:列表内的元素数量
4.10(list 元素 元素…)返回:将所有元素合并为一列表 4.11(listp 元素)返回:判断元素是否为一串
4.12(mapcar函数 列表1列表2…)返回:将列表1、列表2列表的元素配合函数,求得新列表
4.13(member 关键元素列表)返回:根据关键元素(含似后的列表 4.14(nth n 列表)返回:列表的第n个元素
AutoLisp函数3/8
4.15(reverse 列表)返回:将列表元素根据顺序颠倒过来的列表 4.16(subst 新项旧项列表)返回:替换新旧列表后的列表
五、字符串、字符、文件处理函数
5.l(ascii 字符串)返回:字符串第一个字符的“ASCII”码 5.2 (chr 整数)返回:整数所对应的ASCII单一字符串 5.3(close 文件 名称)关闭文件
5.4(open 文件名 模式)返回:打开文件代码,准备读取或写入信息 5.5(read 字符串)返回:列表中的字符串的第一组元素
5.6(read-char[文件代码])返回:通过键盘或文件中读取单一字符 5.7(read-line [文件代码])返回:经由键盘或文件中读取一行字符串 5.8(strcase 字符串[字样])返回:转换字符串大小写
5.9(strcat 字符串1字符串2…)返回:将各字符串合并为一个字符串 5.10(strlen 字符串)返回:字符串构成的字符数(即字符串长度) 5.11(substr 字符串 起始 长度)返回:取出于字符串‘
5.12(wcmatch 字符串 格式)返回:T或 nil,将字符串与通用字符进行比较 5.13(write-char数值[文件代码])返回:将一ASCII字符写到文件或屏幕 15.14(write-line字符串[文件代码])返回:将字符串写到文件或屏幕上
六、等待输入功能函数
6.l (getangle [基点] [提示])请求输入十进制角度数值,响应一个弧度值提示及参考点可有可无
6.2(getcorner 基点[提示])请求输入另一矩形框对角点坐标 6.3(getdist [基点][提示])请求输入一段距离 6.4(getint [提示])请求输入一个整数值 6.5(getkword [提示]请求输入“关键词”
6.6(getorient [基点][提示])请求输入十进制角度,响应一弧度值不受angbase、angdir影响
6.7(getPoint [基点][提示])请求输入一个点的坐标 6.8(getreal [提示]请求输入一个实数 6.9(getstring [提示])请求输入一个字符串
6.10(initget [位]字符串)设定下次getxxx函数的有效输入
七、几何运算功能函数
AutoLisp函数4/8
7.l(angle 点1 点2)取得两点的角度弧度值 7.2(distance 点1 点2)取得两点的距离
7.3(inters 点1 点2 点3 点 4[模式])取得两条线的交点 7.4(osnap 点 模式字符串)按照捕捉模式取得另一坐标点 7.5(polar 基点 弧度 距离)按照极坐标法取得另一坐标点 7.6(textbox 对象列表)取得文字字符串的两个对角点坐标
八、对象处理功能函数
8.l(entdel 对象名称)删除或取消删除对象
8.2(entget 对象名称[应用程序列表])取出对象名称的信息列表 8.3 (entlast) 取出图形信息中的最后一个对象 8.4(entmake 对象列表)建立一个新的对象列表
8.5(entmod 对象列表)根据更新的信息列表更新屏幕上元体 8.6(entnext [对象名称])找寻图面中的下一个对象
8.7(entsel [提示])请求选取一个对象,响应包含对象名称及选点坐标的列表; 8.8(entupd 对象名称)更新屏幕上复元体图形 8.9(handent 图码)返回:图码的元体名称
8.10(nentsel[提示])返回:BLOCK所含副元体对象信息列表
8.11(nentselp [提示][点])返回:BLOCK所含副元体对象信息似4*4矩形表示)
九、选择集、符号表处理函数
9.l(ssadd [对象名称][选择集])将对象加入选择集或建立一新选择集 9.2(ssdel 对象名称选择集)将对象自选择集中移出 9.3(ssget [模式][点 1][点 2]取得一个选择集
9.4(ssget ”X” [过滤列表])取得根据过滤列表所指定范围的选择集 9.5(sslenth 选择集)计算选择集的对象个数
9.6(ssmemb 对象名称选择集)响应对象名称是否包含于选择集内 9.7(ssname 选择集索引值)根据索引值取出选择集中的对象名称
9.8(tblnext 符号表名称[T])检视符号表,有效的符号表:”LAYER”、”LTYPE”、”VIEW”、 ”STYLE”、”BLOCK”
9.9(tblsearch 符号表名称 符号)在符号表中搜寻符号
十 、AutoCAD相关查询、控制功能函数
10.l(command ”AutoCAD命令”…)超重量级函数,调用执行 AutoCAD命令
AutoLisp函数5/8
10.2(findfile 文件名)返回:该文件名的路径及文件名
10.3(getfiled 标题 内定档名 扩展名 旗号)通过标准 AutoCAD文件对话 DCL对话框获得文件
10.4(getenv ”环境变量”)取得该环境变量的设定值,以字符串表示
10.5(getvar ”系统变量”)取得该系统变量的设定值,以字符串表示 10.6(setvar ”系统变量”值)设定该系统变量的值
10.7(regapp 应用类项)将目前的AutoCAD图形登记为一个应用程序名称
十一、判断式、循环相关功能函数
11.1(If <比较式> <表达式1> [表达式2] 检算比较式结果,如果为真,执行<表达式1>,否则执行<表达式2>
11.2( repeat 次数 [< 表达式> <表达式>…])重复执行 N次表达式 11.3(While <比较式> <表达式>…) 当条件成立则执行表达式内容 11.4(cond <比较式 1> <表达式 1> 多条件式的 if整合功能 <比较式2> <表达式2> <比较式3> <表达式3>)
11.5 ( prong 表达式1 表达式2…) 连接其中的表达式为一组,常用于配合if、cond等函数
十二、函数处理、定义、追踪与错误处理功能函数 12.l(*error* 字符串)程序错误时的警示信息 12.2(alert 字符串)以对话框式显示出警告字符串 12.3(apply 功能函数列表)将功能函数与列表结合后执行 12.4(defun 名称 自变量列表表达式_.)自定函数或子程序 12.5(eval 表达式)返回:表达式的执行结果 12.6(exit)强制退出目前的应用程序
12.7(lambda 自变量表达式)定义未命名的函数
12.8(progn 表达式1 表达式2…)连接其内的表达式为一组,常用于配合if、cond等函数
12.9(quit)强制退出目前的应用程序
12.10(tablet 代码 [列1列2列3方向])取用或建立对数字板的校调 12.11(trace 函数…)对函数设定追踪标记,辅助检错 12.12(untrace 函数…)对函数设定解除追踪标记