明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 6188|回复: 22

[经验] CAD 系统变量参数大全

  [复制链接]
发表于 2019-1-22 18:31 | 显示全部楼层 |阅读模式
本帖最后由 1291500406 于 2019-1-29 20:52 编辑

CAD 系统变量参数大全  

一、数学运算功能函数
1.1(十  数值 数值…)返回:累计实数或整数数值
1.2(一  数值 数值…)返回:差值
1.3(*  数值 数值…)返回:所有数值乘积
1.4(/  数值 数值…)返回:第一个数值除以第二个以后数值的商
1.5(l十 数值)返回:数值十l
1. 6(1— 数值)返回:数值一l
1.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数值的相除的余数
1.20(sin 角度)返回:角度的正旋值,角度值为弧度
1.21(sqrt 数值)返回:数值的平方根


二、检验与逻辑运算功能函数
2.1(=  表达式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  函数 整数 整数…)返回:位式布尔运算
2.10(eq  表达式1  表达式2)比较表达式1与表达式2是否相同,适用列表比较(实际相同)
2.11(equal  表达式  1表达式 2[差量])比较表达式  1与表达式 2是否相同,差量可省略(内容相同)


三、转换运算功能函数
3.1(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个元素
4.15(reverse  列表)返回:将列表元素根据顺序颠倒过来的列表
4.16(subst  新项旧项列表)返回:替换新旧列表后的列表


五、字符串、字符、文件处理函数
5.1(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字符写到文件或屏幕
5.14(write-line字符串[文件代码])返回:将字符串写到文件或屏幕上


六、等待输入功能函数
6.1 (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函数的有效输入


七、几何运算功能函数
7.1(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.1(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.1(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.1(command  ”AutoCAD命令”…)超重量级函数,调用执行 AutoCAD命令
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.1(*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  函数…)对函数设定解除追踪标记


十三、显示、打印控制功能函数
13.1(gfaphscr)作图环境切换到图形画面
13.2(grclear)暂时清除模前的屏幕画面
13.3(grdraw起点终点颜色[亮显])暂时性的画出一条线
13.4(grread[追踪])由输入设备读取追踪值
13.5(grtext位置字符串[亮显])将字符串显示在状态列或屏幕菜单上
13.6(grvecs向量列表[转置矩阵])暂时性的画出多条线
13.7(menucmd字符串);提供在  AlltOLISP中调用各菜单
13.8(Prinl[表达式[文件代码]]将表达式打印于命令区或已打开的文件句柄字符则以“\”为前缀展开
13.9(pinc[表达式[文件代码]]除句柄字符则不以”\”为前缀展外开其余同Prinl
13.10(print[表达式[文件代码]]除表达式会往下一新行列出,及空一格外其余同prinl
13.11(prompt信息)将信息显示于屏幕的命令区,并随后响应一个nil信息
13.12(redraw[对象名称[模式]])重绘整张图或根据对象名称重绘该图形
13.13(terpri)   在屏幕上显示新列
13.14(textscr)   作图环境切换到文字画面
13.15(textpage)清除文字画面文字类似  DOS的cls命令
13.16(vports)返回:窗口组态列表


十四、符号、元素、表达式处理功能函数
14.1(atom元素)如果元素不是列表,响应T,否则为nil
14.2(atoms-family格式闲号列表])返回:一组己定义函数的符号列表
14.3(boundp表达式)返回:T或 nil,响应表达式是否有值存在
14.4(minusp元素)返回:T或n儿 元素是否为负值
14.5(not元素)返回:T或n儿 判定元素是否为ni1
14.6(null元素)返回:T或nil判定元素是否被赋予nil值
14.7(numberp元素)返回:T或nil,元素是否为整数或实数
14.8(quote表达式)响应表达式未检算前状态,同“‘”功能
14.9(set符号 表达式)将表达式结果设定给带单引号’符号
14.10(setq符号1 表达式1[符号2表达式2]…)设定表达式结果给各符号
14.11(type元素)返回:元素的信息型态
14.12(zerop元素)返回:T或nil,元素是否为0值


十五、ADS、ARX、AutoLISP加载与卸载函数
15.1(ads)返回:目前加载ADS程序列表
15.2(arx)返回:目前加载 ARX程序列表
15.3(arxload应用程序[出错处理]))返回:加载 ARX程序
15.4(arxunload应用程序[出错处理]))返回:卸载 ARX程序
15.5(ver) 返回:目前  AutoLISP版本字符串
15.6(load LSP文件名[加载失败])加载 AutoLISP文件(*.lsp)
15.7 (xload应用程序[错处理])加载ADS应用程序
15.8  (xunloa应用程序[出错处理])卸载 ADS应用程序


十六、内存空间管理函数
16.1(alloc数值)以节点数值设定区段大小
16.2(expand数值)以区段数值配置节点空间
16.3(gc)强制收回废内存
16.4(mem)显示目前的内存使用状态
16.5(xdroom对象名称)返回对象扩展信息允许使用的内存空间
16.6(xdsize列表)返回对象扩展信息所占用的内存空间


十七、其它重要的功能函数
17.1(acad&#172;_colordlg 颜色码 旗号)显示出标准  AutoCAD颜色选择对话框
17.2(acad_helpdlg 求助文件名 主题)显示出标准 AutoCAD求助对话框
17.3(acad_strlsort字符串列表)作字符串列表排序
17.4(bherrs) 取得 bhatch与   bpcly失败所产生的错误信息
17.5(bhatch点[选择集[向量]])根据 Pick point选点方式调用 bhatch命令,绘制选集区域的剖面线
17.6(bpoly点[选择集[向量]])根据Pick point选点方式调用bpoly命令并产生一定域Polyline
17.7(cal计算式字符串)执行如  CAL计算功能


十八、ADS、ARX外部定义的3D函数
18. 1(align自变量  1 自变量 2....)执行如  ALIGN命令各选项顺序
18.2(c:3dsin模式3DS文件名)导入3DS文件
18.3(C:3dsout模式3DS文件名)输出3DS文件
18.4(c:background模式[选项])设定渲染背景
18.5(C:fog模式[选项])设定渲染的雾效果
18.6(C:light模式[选项])设定渲染的灯光控制
18.7(c:lsedit模式【选项1】设定渲染的景物控制
18.8(C:lslib模式[选项])管理景物图库
18.9(c:matilb模式 材质 材质库名)管理材质数据库
18.10(c:mirror3d 自变量1 自变量2……) 执行如MIRROR3D命令
18.11(C:psdrap模式)根据模式设定值(0或1),传唤psdrap命令
18.12(C:psfill对象名称  图案名称[自变量1[自变量2]])以POStSCript图案填满
18.13(c:psin文件名 位置 比例)插入一个Postscript(*.eps)文件
18.14(c:render[渲染文件])执行渲染效果
18.15(C:rfileopt格式 自变量1 自变量2 自变量3…)设定执行渲染选项
18.16(c:replay影像文件名 影像类别[选项])展示影像文件TGA、BMP、TIF
18.17(C:rmat模式 选项)控管材质建立、贴附、编辑、分离
18.18(c:rotate3d自变量 1 自变量2…)执行如 ROTATE3D命令各选项顺序
18.19(C:rpref模式 选项[设定])渲染环境设定
18.20(c:saveimg影像文件名影像类别[选项])储存图像文件TGA、BMP、TIF
18.21 (c:scene模式 [选项])SCENE场景管理
18.22(C:setuv模式 选集 自变量1 自变量2…)SETUV贴图模式管理
18.23(C:showmat自变量1)显示对象的材质贴附信息
18.24(C:solprof自变量  1 自变量工..)建立  3D实体的轮廓影像
18.25(C:StatS[渲染信息文件])显示渲染信息统计信息


十九、ADS、ARX外部定义的数据库相关函数
19.1(c:aseadmin自变量1 自变量2…)管理外部数据库
19.2(c:aseexportt自变量1 自变量2…)输出信息
19.3 (c:aselinks自变量1 自变量2…)连接对象与信息
19.4(c:aserow自变量1 自变量2…)管理外部信息表格
19.5(c:aseselect自变量1 自变量2…)建立外部信息与对象选集
19.6 (c:asesqled自变量 1 自变量2…) 执行SQL程序

什么是LISP语言?
LISP是最早和最重要的符号处理编程语言之一,它于1958年由美国的J. McCarthy提出,并于1960年发表了他的第一篇关于LISP的论文。之后,LISP很快受到人工智能工作者的欢迎,获得广泛应用。LISP是LISt Processing(表处理)的缩写。

一、LISP的特点和数据结构

1.LISP语言具有下列特点
(1)主要数据结构是表(符号表达式),而不是作为算术运算对象的数。
(2)特性表简单,便于进行表处理。
(3)最主要的控制结构为递归,适于过程描述和问题求解。
(4)LISP程序内外一致,全部数据均以表形式表示。
(5)能够产生更复杂的函数和解释程序。
(6)对大多数事物的约束发生在尽可能晚的时刻。
(7)数据和过程都可以表示成表使得程序可能构成一个过程并执行这个过程。
(8)大多数LISP系统可以交互方式运行,便于开发各类程序,包括交互程序。

2.数据结构
在基本LISP中,仅有一种数据类型,即表结构。大多数LISP程序设计中,数据是以表或者原子为专门形式。
原子:原子是LISP中最小的符号单位。原子有标识符,诸如I AM A STUDENT,3,XYZ,或者NIL等。它们没有组合部分,各种性质或属性可附加到单个原子上。
一个原子最重要的属性除其名字外是值,这与变量有值同义。一些原子有标准值:原子NIL的值是NIL,T的值是T。任何数字原子,其相应的整数或浮点数是它的值。这里要注意,原子不是"类型",任何原子,除常数外,可以给予任意值。
表:一个表递归地定义为括号内零个或n个元素的序列:

(元素1 … 元素n)
其中每一个元素是一个原子或是一个表。零或者空表写成(),或者NIL。NIL既是原子又是表。表的固有递归结构非常灵活,便于表示各种信号。
例如:
(4 6 7 9 14 17 20 24 76)一组数
((-B)+(SQRT((B*B)-(4*A*C))))代数表达式
(I(know((that(gasoline can))explode)))语法分析句子
(YELLOW TABLE)断言
(AND(ON A B)(ON A C)(NOT(TOUCH B C)))合取子句
表的数据结构:LISP表的内部表示是由称为CONS单元的基元构成。每个CONS单元是一个地址,它包括一对指针,每个指针指到一个原子,或者指到另一个CONS单元。
LISP的表结构可以用来使任何数据结构模型化。例如,二维数组可以表示为由许多行组成的一张表,每行又是一张元素表。当然,对于许多目的,这种数组的实现是相当低效的。
控制结构:LISP是函数式程序语言,LISP的控制结构主要是应用函数指导控制流,其中变元又可以是应用函数。这点与大多数程序设计语言的顺序控制结构不同,在那里分离的句子是一句接一句地执行。在LISP中,语句与表达式没有区别,过程与函数也没有区别。每个函数,不管是否是一个语言原语,或是由用户定义的,都以指向一个表结构的形式返回一个单值。

3.变量约束及其辖域
在LISP中有3种主要的赋予符号含义的方法。这里我们将介绍其中最常用的2种:把变量约束到值上和建立函数。
变量约束到值上:变量本身并无什么含义,它只是一个符号。通过这个符号可以"达到"这个值。变量本身只不过是具有当前值的原子名称而已。当把此名称输入到LISP去时,LISP通过告诉原子的当前值,作为回答。这个名称与原子当前具有的值之间的联系称为约束,例如可把x约束到5。每当您在程序中引用x时,LISP都理解为5。以后您可以重新把x约束到pen,这就破坏了原来的联系而代之以x和pen之间的联系,在这以后,当引用x时,LISP把它理解为pen。x值还可能是一般复杂数据。可以自由地用任意数据段约束任何一个任意选择的符号。在最简单的情况下,变量就是某个对象的名字,变量的值就是对象本身。因此,我们可以发明一些名词写入到程序中去,并对这些名词赋予含义。我们还可以改变这些含义。
建立函数:我们希望能够建立函数,以对名词进行运算,产生新的名词。建立函数的方法与用值约束符号的方法相同。不过,这时的值不是事实,而是要做的事情。在完成这些之后,再把符号正确地输入到LISP中去,LISP不象以前那样理解对象,而是把对象理解为需要完成的某件事。当把有关的符号约束到"含义"上时,就规定了这件事。
辖域:如前所述,当一个值约束一个变量时,约束一直有效,直到使用者改变它为止。当约束来自最高层即来自键盘时,这总是对的。来自函数内部所建立的约束可以是永久性的,但当函数完成时,这些约束往往就消失,变量的名字将成为无约束的。如果在整个程序执行过程中始终保持变量的约束,那么变量被认为是全程变量。如果变量的约束是建立在单个函数的内部,而且当函数约束时,约束就消失,那么这是该函数的局部变量。当然,这二者之间有各种状态:你可能希望在程序的某一点被赋值的变量在执行若干个子程序的过程中保持它的值,然后再失掉这些值。
值得指出,如果局部变量已能解决问题,就不需要建立全程变量。不然的话,就会浪费计算机内存。

二、LISP的基本函数
S-表达式的语法可表示为
〈S-表达式〉∷=<原子|(〈S-表达式〉,〈S-表达式〉)
LISP所处理的各种对象间的关系:一个S-表达式(即符号表达式)可以是一张表或一个原子;一个原子可以是一个符号或一个数;一个数可为浮点数或定点数。

下面介绍LISP的一些基本函数:   

(1)  CAR和CDR
函数CDR是LISP的系统函数,它删除表中第一个元素,返回表的其余部分。函数CAR返回的却是表中的第一个元素,例如:
(CAR ′(FAST COMPUTERS ARE NICE))  
FAST  
(CDR ′(FAST COMPUTERS ARE NICE))  
(COMPUTERS ARE NICE)  
CDR总是返回一张表。当CDR作用于一张仅有一个元素的表时,就得到一张空表,表示为()。可见,CAR和CDR使表内元素分离。

(2)  SET和SETQ  
SET为赋值函数。一个原子符号的值是用SET建立起来的。SET使它的第二个自变量为第一个自变量的值,例如:
(SET  ‘L’(A B))  
(A B)  
即表达式的值为(A B),其副作用使(A B)变为L的值。如果我们打入L,就会返回(A B)的结果。
L(A B)  
SETQ和SET不同处只在于,SETQ不对第一个变量求值。SETQ比SET用得更经常。

(3)  APPEND,LIST和CONS  
APPEND、LIST和CONS把表的元素放在一起。  
APPEND把所有作为自变量的表内各元素串在一起,例如:  
(SET  ‘L’(A B))  
(A B)  
(APPEND L L)  
(A B A B)  
必须注意,APPEND只把其自变量中的所有元素放在一起,而对这些元素本身则不做任何事。LIST与APPEND不同,是用它的自变量造出一张表,每个自变量成为表中的一个元素。例如:
(LIST L L L)  
((A B)(A B)(A B))  
CONS作用于一张表,在其中插入一个新的第一元素。CONS为表构造器的助记符。CONS函数可表示为:
(CONS〈第一个元素〉〈某张表〉)  
例如:  
(CONS ‘(A B)’(C D))  
((A B)C D)  
(CAR(CONS ‘A’(B C ))  
A  

(4)  EVAL  
可直接用EVAL函数对一个自变量求值之后,再求一次值。例如:  
(SETQ A ′B)  
B  
(SETQ B ′C)  
C  
(EVAL A)  
C
原子A第一次被求值是因为它是一个函数的未加引号的自变量。求值结果再被求值是因为该函数是EVAL。EVAL不管函数值如何,都要再求值。

(5)  DEFUN  
DEFUN使用户能够建立一些新的函数,其句法如下:  
(DEFUN〈函数名〉(〈参数1〉〈参数2〉…〈参数n〉)  
〈过程描述〉)  
DEFUN不对其自变量求值,它仅仅查看一下自变量并建立一个函数定义,以后这个定义可以用函数名字来调用,只要函数名是被求值表的第一个元素。函数名必须是符号原子。用DEFUN时,也象其它函数一样,它也给出一个回答值。DEFUN回送的值是函数名,但这个值不是重要的结果,因为DEFUN的主要目的是建立函数定义,而不是回送一个有用的值。当用到函数的回送值时,称这个值为返回值。函数在返回值之后,它所完成的而且继续保留下来的作用称为副作用。DEFUN的副作用是给一个原子赋值。跟在函数名之后的表称为参数表。每一个参数都是可能出现在函数〈过程描述〉部分的符号原子。参数的值在一个函数被调用时由函数的一个自变量的值来确定。例如,
(DEFUN F-TO-C(TEMP)
(QUOTIENT (DIFFERENCE TEMP 32)1.8))
F-TO-C
当用F-TO-C时,它作为第一个元素出现在一张双元素的表中。第二个元素是F-TO-C的自变量。自变量被求值之后,这个值就成为函数参数的暂时值。在这个函数中,TEMP是参数,当F-T-OC求值时,自变量的值是已知的。

(6)T和NIL  
更复杂函数的定义需要用到谓词函数。谓词返回两个特殊原子T或NIL中的一个。T和NIL两个值相当于逻辑上的真与假。常用的谓词函数有:EQ(X Y)比较两个原子X和Y,若它们相等则为真。
EQUAL(X Y)比较两个S-表达式,如果它们相等则为真。这个函数更常使用。
ATOM(X)如果X是个原子,则为真。
NUMBERP(X)如果X的值是数字,则为真。
ONEP(X)如果X的值为1,则为真。
GREATERP(X Y)如果X值大于Y值,则为真。
LESSP(X Y)如果X值小于Y值,则为真。
NULL(X)如果X值为NIL,则为真。
MEMBER(X Y)如果X的值是Y值表中的元素,则S 表达式为真。
ZEROP(X)若数字自变量X为0,则取真值。
MINUSP(X)若数字X为负,则取真值。
一个谓词以P结尾,这个P是谓词(Predicate)的助记符。不过有些例外,如AUTO等。

(7) AND、OR及NOT
AND和OR可以进行组合测试。只有当所有的自变量均为非NIL时才返回非NIL。OR只要有一个自变量为非NIL时就返回非NIL。这两个谓词都可取任意多个自变量。NOT仅当其自变量为NIL时才返回T。

(8) COND  
COND函数是一个条件函数,语法形式为:  
(COND ( <测试1 > ...<结果1>)  
( <测试2 > ...<结果2>)  
┇  
( <测试n > ...<结果n>))  
函数名COND后跟着一些表。每个表包含一个测试部分和如果测试成功后的返回值部分。每一个表叫做一个子句。该函数的功能是搜索每一个子句,对每个子句的第一个元素求值,直到找到一个非NIL的值,这样该子句为成功的子句。然后在这个成功的子句中其余各个元素被求值,该子句最后一个元素的求值结果作为COND函数的值。如果没有找到成功的子句,COND返回NIL。当成功的子句只含有一个元素,那么这个元素本身的值就是返回值,即测试元素与结果元素可以是同一个。

(9)  PROG  
PROG是个通用函数,它能设立新的变量,提供清晰的迭代过程。PROG也可以只用于把几个依次执行的S-表达式组合起来,成为一个序列。PROG不对它的第一个自变量求值,第一个自变量必须是一个原子表或空表。一旦遇到函数RETURN,则PROG立即终止。PROG1能返回第一个自变量的值。

(10)  GET和PUTPROP  
GET函数用于检索特征值,而补函数PUTPROP用于存放特征值或替代特征值。  

(11)  LAMBDA  
LAMBDA用于定义匿名函数。为了避免无用函数名的激增,对于局部使用的函数可去掉函数名,采用新的函数定义方法,称为λ-表达式,它用原子LAMBDA代替DEFUN。

(12)  READ和PRINT  
READ和PRINT函数用于进行对话。PRINT函数对它的单个变量求值,并把其值打印在新的一行上。PRINT函数回答T作为它的值。例如:
(PRINT′EXAMPLE)  
EXAMPLE  
T  
当遇到(READ)时,LISP程序暂停并等待用户在键盘上打入一个S-表达式。该表达式不必求值便成为(READ)的值。例如,在下例中当用户遇到(READ)函数后打入EXAMPLE(跟着打入一空格):
(READ)EXAMPLE  
EXAMPLE  
以上仅介绍LISP的基本函数和个别特别重要的函数。下面将介绍LISP的递归和迭代。其它函数请读者参阅有关参考文献。

三、递归和迭代
函数通过简化问题求解过程,将被简化的问题再交给一个或多个与自己完全一样的函数,从而让程序解决此问题。这就叫做递归,它是重复地做某件事情的一种方法。

1.递归
递归是重复完成相同工作的有效方法。SHORTEN函数所用的是递归,其中包括一行LISP码,这行码使SHORTEN在它自身内部又发生一次。换句话说,SHORTEN执行中的一部分涉及再次执行SHORTEN,例如:
  (DEFUN SHORTEN(l)   
  (COND((NULL l) NIL)   
  (T (PRINT l)   
  (SHORTEN (CDR l)))))←   
当程序运行,LISP求值器到达箭头所示的那行末尾时,已经建立了这个函数的一种新版本。这种新版本的自变量不同于输入数据。当求值器在新的SHORTEN中达到相同点时,同样的事情再次发生。如此重复,直到某一点,最后一行建立一个以空表作为自变量的SHORTEN的新版本。在最后这个循环中,不能达到箭头所指这点,因为COND把求值器引向NIL或什么也不做的指令。为便于说明,我们试对这个函数输入一个很短的表:
(SETQ ANIMALS′(DOG CAT MOUSE))
在数据已经减少为NIL的循环中,机器不需要做什么。下一步机器所要做的工作是结束所有那些被部分地完成了的SHORTEN版本,并且回到最高层。为了使这个过程更清楚一些,我们把这个函数改写为:
  (DEFUN SHORTEN(l)   
  (COND((NULLl)NIL)   
  (T(SHORTEN(CDR l))   
  (PRINT l))))   
在这种情况下,1不是在每个向前的循环中被打印,而是留到CONS已最终结束递归后再打印。所以,首先打印只留下一个元素的那个版本的1,因为当1中只留下一个元素时,1的CDR是NIL。这样,在下一个被打印的1版本中有两个元素,如此继续,直到整个表为止。

2.迭代
另一种重复地做相同事情的方法要简单得多,称为迭代。迭代函数包含一个循环,不同于递归。迭代只执行函数的一种版本,并且不涉及展开程序。迭代只是简单的循环,它不同于递归的一个方面是,递归发生在逐渐加深的层次上,而迭代始终在同一层中,迭代循环步骤如下: (1) 约束某些变量。
(2) 测试变量以检查出口(停止)条件是否适用。若适用,则进行(3)。
(3) 以某种方法改变变量的值。  
(4) 返回(2)。
在不同的LISP方言中,用于实现迭代的指令各不相同,功能也有所区别,以下是一种基本的PROG循环的例子。   (PROG〈VARS〉
  TAG
  〈停止试验〉
  (…主体…)
  (GO TAG)
其中主体可为所需的任何LISP指令序列,但其中至少有一条是用于改变某个变量的值,而且这个变量将在停止试验中被测试。例如:   (DEFUN SHORTEN(l)
  (PROG()
  TAG
  (COND ((NULL l)(RETURN NIL))
  (T(PRINT l)
  (SETQ l (CDR l))
  (GO TAG)))))
其中COND的第一个子句是停止试验,T子句是PROG指令的主体。在打印了l表的当前值之后,不是重新调用具有被截短的自变量SHORTEN,而是把l重新置为它自己的CDR,然后重复TAG和GO TAG这两个指令之间的程序。这样的循环一直继续到试验成功为止,即到l是NIL止。这时,RETURN指令停止程序,可RETURN所希望的任何LISP表达式,这些表达式中最后的值就成为PROG的最后的值。在前面的对循环的说明中的第一条指出,约束某些局部变量;约束的含义是对这些变量赋值。在PROG指令中,任何变量如果其名字(符号)被直接放在PROG后面的括号内,那么这些变量就被约束(置)为NIL。但SHORTEN不需要任何这样的变量,所以在此例子中,上述括号形成一个空表。









CAD系统变量大全        
序号    变量名称    说明
1    Acadlspasdoc    0 仅将 acad.lsp 加载到 AutoCAD 任务打开的第一个图形中; 1 将 acad.lsp 加载到每一个打开的图形中
2    Acadprefix    存储由 ACAD 环境变量指定的目录路径(如果有的话),如果需要则附加路径分隔符
3    Acadver    存储 AutoCAD 的版本号。这个变量与 DXF 文件标题变量 $ACADVER 不同,"$ACADVER" 包含图形数据库的级别号
4    Acisoutver    控制 ACISOUT 命令创建的 SAT 文件的 ACIS 版本。ACISOUT 支持值 15 到 18、20、21、30、40、50、60 和 70。
5    Aflags    设置 ATTDEF 位码的属性标志:0无选定的属性模式:1.不可见 2.固定4.验证.8.预置
6    Angbase    类型:实数; 保存位置:图形 初始值:0.0000 相对于当前 UCS 将基准角设置为 0 度。
7    Angdir    设置正角度的方向 初始值:0;从相对于当前 UCS 方向的 0 角度测量角度值。0 逆时针 1 顺时针
8    Apbox    打开或关闭 AutoSnap 靶框。当捕捉对象时,靶框显示在十字光标的中心。0 不显示靶框 1 显示靶框
9    Aperture    以像素为单位设置靶框显示尺寸。靶框是绘图命令中使用的选择工具。初始值:10
10    Area    AREA 既是命令又是系统变量。存储由AREA 计算的最后一个面积值。
11    Attdia    控制 INSERT 命令是否使用对话框用于属性值的输入:0.给出命令行提示 1.使用对话框
12    Attmode    控制属性的显示:0 关,使所有属性不可见;1.普通,保持每个属性当前的可见性;2.开,使全部属性可见
13    Attreq    确定 INSERT 命令在插入块时默认属性设置。0.所有属性均采用各自的默认值;1.使用对话框获取属性值
14    Auditctl    控制 AUDIT 命令是否创建核查报告 (ADT) 文件:0.禁止写 ADT 文件 1.写 ADT 文件
15    Aunits    设置角度单位:0.十进制度数 1.度/分/秒 2.百分度 3.弧度 4.勘测单位
16    Auprec    设置所有只读角度单位(显示在状态行上)和可编辑角度单位(其精度小于或等于当前 AUPREC 的值)的小数位数。
17    Autosnap    0.关(自动捕捉);1.开 2.开提示 4.开磁吸 8.开极轴追踪 16 开捕捉追踪 32 开极轴追踪和捕捉追踪提示
18    Backz    以绘图单位存储当前视口后向剪裁平面到目标平面的偏移值。VIEWMODE 系统变量中的后向剪裁位打开时才有效。
19    Bindtype    控制绑定或在位编辑外部参照时外部参照名称的处理方式:0.传统的绑定方式 1.类似“插入”方式
20    Blipmode    控制点标记是否可见。BLIPMODE 既是命令又是系统变量。使用 SETVAR 命令访问此变量:0.关闭 1.打开
21    Cdate    设置日历的日期和时间,不被保存。
22    Cecolor    设置新对象的颜色。有效值包括 BYLAYER、BYBLOCK 以及从 1 到 255 的整数。
23    Celtscale    设置当前对象的线型比例因子。
24    Celtype    设置新对象的线型。初始值:“BYLAYER”
25    Celweight    设置新对象的线宽:1.线宽为“BYLAYER”;2.线宽为“BYBLOCK”;3.线宽为“DEFAULT”。
26    Chamfera    设置第一个倒角距离。初始值: 0.0000
27    Chamferb    设置第二个倒角距离。初始值: 0.0000
28    Chamferc    设置倒角长度。初始值: 0.0000
29    Chamferd    设置倒角角度。初始值: 0.0000
30    Chammode    设置 AutoCAD 创建倒角的输入方法:0.需要两个倒角距离 1.需要一个倒角距离和一个角度
31    Circlerad    设置默认的圆半径:0.表示无默认半径。初始值:0.0000
32    Clayer    设置当前图层。初始值:0
33    Cmdactive    存储位码值,此位码值指示激活的是普通命令、透明命令、脚本还是对话框。
34    Cmddia    输入方式的切换:0.命令行输入 1.对话框输入
35    Cmdecho    控制在 AutoLISP 的 command 函数运行时 AutoCAD 是否回显提示和输入:0.关闭回显 1.打开回显
36    Cmdnames    显示当前活动命令和透明命令的名称。例如 LINE'ZOOM 指示ZOOM 命令在LINE 命令执行期间被透明使用。  
37    Cmljust    指定多线对正方式:0.上 1.中间 2.下。初始值:0
38    Cmlscale    初始值:1.0000(英制)或 20.0000(公制)控制多线的全局宽度。
39    Cmlstyle    设置 AutoCAD 绘制多线的样式。初始值:"STANDARD"
40    Compass    控制当前视口中三维指南针的开关状态:0.关闭三维指南针 1.打开三维指南针
41    Coords    0.用定点设备指定点时更新坐标显示 1.不断地更新绝对坐标的显示 2.不断地更新绝对坐标的显示
42    Cplotstyle    控制新对象的当前打印样式。
43    Cprofile    显示当前配置的名称。
44    Ctab    返回图形中当前(模型或布局)选项卡的名称。通过本系统变量,用户可以确定当前的活动选项卡。
45    Cursorsize    按屏幕大小的百分比确定十字光标的大小。初始值:5
46    Cvport    设置当前视口的标识码。
47    Date    存储当前日期和时间。
48    Dbmod    用位码指示图形的修改状态:1.对象数据库被修改 4.数据库变量被修改 8.窗口被修改 16.视图被修改
49    Dctcust    显示当前自定义拼写词典的路径和文件名。
50    Dctmain    显示当前的主拼写词典的文件名。
51    Deflplstyle    指定图层 0 的默认打印样式。
52    Defplstyle    为新对象指定默认打印样式。
53    Delobj    控制创建其他对象的对象将从图形数据库中删除还是保留在图形数据库中:0.保留对象 1. 删除对象
54    Demandload    当图形包含由第三方应用程序创建的自定义对象时,指定 AutoCAD 是否以及何时按需加载此应用程序。
55    Diastat    存储最近一次使用的对话框的退出方式:0.取消 1.确定
56    Dimadec    1.使用 DIMDEC 设置的小数位数绘制角度标注;0-8 使用 DIMADEC 设置的小数位数绘制角度标注。
57    Dimalt    控制标注中换算单位的显示:关.禁用换算单位 开.启用换算单位
58    Dimaltd    控制换算单位中小数位的位数。
59    Dimaltf    控制换算单位乘数。
60    Dimaltrnd    舍入换算标注单位。
61    Dimalttd    设置标注换算单位公差值小数位的位数。
62    Dimalttz    控制是否对公差值作消零处理。
63    Dimaltu    为所有标注样式族(角度标注除外)换算单位设置单位格式。
64    Dimaltz    控制是否对换算单位标注值作消零处理。DIMALTZ 值为 0 - 3 时只影响英尺-英寸标注。
65    Dimapost    为所有标注类型(角度标注除外)的换算标注测量值指定文字前缀或后缀(或两者都指定)。
66    Dimaso    控制标注对象的关联性。
67    Dimassoc    控制标注对象的关联性。
68    Dimasz    控制尺寸线、引线箭头的大小。并控制钩线的大小。
69    Dimatfit    当尺寸界线的空间不足以同时放下标注文字和箭头时,本系统变量将确定这两者的排列方式。
70    Dimaunit    设置角度标注的单位格式:0.十进制度数 1.度/分/秒 2.百分度 3.弧度
71    Dimazin    对角度标注作消零处理。
72    Dimblk    设置尺寸线或引线末端显示的箭头块。
73    Dimblk1    当 DIMSAH 系统变量打开时,设置尺寸线第一个端点的箭头。
74    Dimblk2    当 DIMSAH 系统变量打开时,设置尺寸线第二个端点的箭头。
75    Dimcen    控制由 DIMCENTER、 DIMDIAMETER 和 DIMRADIUS 命令绘制的圆或圆弧的圆心标记和中心线图形。
76    Dimclrd    为尺寸线、箭头和标注引线指定颜色。同时控制由 LEADER 命令创建的引线颜色。
77    Dimclre    为尺寸界线指定颜色。
78    Dimclrt    为标注文字指定颜色。
79    Dimdec    设置标注主单位显示的小数位位数。精度基于选定的单位或角度格式。
80    Dimdle    当使用小斜线代替箭头进行标注时,设置尺寸线超出尺寸界线的距离。
81    Dimdli    控制基线标注中尺寸线的间距。
82    Dimdsep    指定一个单字符作为创建十进制标注时使用的小数分隔符。
83    Dimexe    指定尺寸界线超出尺寸线的距离。
84    Dimexo    指定尺寸界线偏移原点的距离。
85    Dimfit    旧式,除用于保留脚本的完整性外没有任何影响。DIMFIT 被 DIMATFIT 系统变量和 DIMTMOVE 系统变量代替。
86    Dimfrac    在 DIMLUNIT 系统变量设置为:4(建筑)或 5(分数)时设置分数格式,0.水平 1.斜 2.不堆叠
87    Dimgap    当尺寸线分成段以在两段之间放置标注文字时,设置标注文字周围的距离。
88    Dimjust    控制标注文字的水平位置。
89    Dimldrblk    指定引线箭头的类型。要返回默认值(实心闭合箭头显示),请输入单个句点 (.)。
90    Dimlfac    设置线性标注测量值的比例因子。
91    Dimlim    将极限尺寸生成为默认文字。
92    Dimlunit    为所有标注类型(除角度标注外)设置单位制。
93    Dimlwd    指定尺寸线的线宽。其值是标准线宽。-3.BYLAYER -2.BYBLOCK 整数代表百分之一毫米的倍数
94    Dimlwe    指定尺寸界线的线宽。其值是标准线宽。-3 BYLAYER -2 BYBLOCK 整数代表百分之一毫米的倍数
95    Dimpost    指定标注测量值的文字前缀或后缀(或者两者都指定)。
96    Dimrnd    将所有标注距离舍入到指定值。
97    Dimsah    控制尺寸线箭头块的显示。
98    Dimscale    为标注变量(指定尺寸、距离或偏移量)设置全局比例因子。同时还影响 LEADER 命令创建的引线对象的比例。
99    Dimsd1    控制是否禁止显示第一条尺寸线。
100    Dimsd2    控制是否禁止显示第二条尺寸线。
101    Dimse1    控制是否禁止显示第一条尺寸界线:关.不禁止显示尺寸界线 开.禁止显示尺寸界线
102    Dimse2    控制是否禁止显示第二条尺寸界线:关.不禁止显示尺寸界线 开.禁止显示尺寸界线
103    Dimsho    旧式,除用于保留脚本的完整性外没有任何影响。
104    Dimsoxd    控制是否允许尺寸线绘制到尺寸界线之外:关.不消除尺寸线 开.消除尺寸线
105    Dimstyle    DIMSTYLE 既是命令又是系统变量。作为系统变量,DIMSTYLE 将显示当前标注样式。
106    Dimtad    控制文字相对尺寸线的垂直位置。
107    Dimtdec    为标注主单位的公差值设置显示的小数位位数。
108    Dimtfac    按照 DIMTXT 系统变量的设置,相对于标注文字高度给分数值和公差值的文字高度指定比例因子。
109    Dimtih    控制所有标注类型(坐标标注除外)的标注文字在尺寸界线内的位置。
110    Dimtix    在尺寸界线之间绘制文字。
111    Dimtm    在 DIMTOL 系统变量或 DIMLIM 系统变量为开的情况下,为标注文字设置最小(下)偏差。
112    Dimtmove    设置标注文字的移动规则。
113    Dimtofl    控制是否将尺寸线绘制在尺寸界线之间(即使文字放置在尺寸界线之外)。
114    Dimtoh    控制标注文字在尺寸界线外的位置:0或关.将文字与尺寸线对齐 1或开.水平绘制文字
115    Dimtol    将公差附在标注文字之后。将 DIMTOL 设置为“开”,将关闭 DIMLIM 系统变量。
116    Dimtolj    设置公差值相对名词性标注文字的垂直对正方式:0.下 1.中间 2.上
117    Dimtp    在DIMTOL 或 DIMLIM 系统变量设置为开的情况下,为标注文字设置最大(上)偏差。DIMTP 接受带符号的值。
118    Dimtsz    指定线性标注、半径标注以及直径标注中替代箭头的小斜线尺寸。
119    Dimtvp    控制尺寸线上方或下方标注文字的垂直位置。当 DIMTAD 设置为关时,AutoCAD 将使用 DIMTVP 的值。
120    Dimtxsty    指定标注的文字样式。
121    Dimtxt    指定标注文字的高度,除非当前文字样式具有固定的高度。
122    Dimtzin    控制是否对公差值作消零处理。
123    Dimunit    旧式,除用于保留脚本的完整性外没有任何影响。DIMUNIT 被 DIMLUNIT 和 DIMFRAC 系统变量代替。
124    Dimupt    控制用户定位文字的选项。0光标仅控制尺寸线的位置 1或开 光标控制文字以及尺寸线的位置
125    Dimzin    控制是否对主单位值作消零处理。
126    Dispsilh    控制“线框”模式下实体对象轮廓曲线的显示。并控制在实体对象被消隐时是否绘制网格。0.关 1.开
127    Distance    存储 DIST 命令计算的距离。
128    Donutid    设置圆环的默认内直径。
129    Donutod    设置圆环的默认外直径。此值不能为零。
130    Dragmode    控制拖动对象的显示。
131    Dragp1    设置重生成拖动模式下的输入采样率。
132    Dragp2    设置快速拖动模式下的输入采样率。
133    Dwgcheck    在打开图形时检查图形中的潜在问题。
134    Dwgcodepage    存储与 SYSCODEPAGE 系统变量相同的值(出于兼容性的原因)。
135    Dwgname    存储用户输入的图形名。
136    Dwgprefix    存储图形文件的驱动器/目录前缀。
137    Dwgtitled    指出当前图形是否已命名:0.图形未命名 1.图形已命名
138    Edgemode    控制 TRIM 和 EXTEND 命令确定边界的边和剪切边的方式。
139    Elevation    存储当前空间当前视口中相对当前 UCS 的当前标高值。
140    Expert    控制是否显示某些特定提示。
141    Explmode    控制 EXPLODE 命令是否支持比例不一致 (NUS) 的块。
142    Extmax    存储图形范围右上角点的值。
143    Extmin    存储图形范围左下角点的值。
144    Extnames    为存储于定义表中的命名对象名称(例如线型和图层)设置参数。
145    Facetratio    控制圆柱或圆锥 ShapeManager 实体镶嵌面的宽高比。设置为 1 将增加网格密度以改善渲染模型和着色模型的质量。
146    Facetres    调整着色对象和渲染对象的平滑度,对象的隐藏线被删除。有效值为 0.01 到 10.0。
147    Filedia    控制与读写文件命令一起使用的对话框的显示。
148    Filletrad    存储当前的圆角半径。
149    Fillmode    指定图案填充(包括实体填充和渐变填充)、二维实体和宽多段线是否被填充。
150    Fontalt    在找不到指定的字体文件时指定替换字体。
151    Fontmap    指定要用到的字体映射文件。
152    Frontz    按图形单位存储当前视口中前向剪裁平面到目标平面的偏移量。
153    Fullopen    指示当前图形是否被局部打开。
154    Gfang    指定渐变填充的角度。有效值为 0 到 360 度。
155    Gfclr1    为单色渐变填充或双色渐变填充的第一种颜色指定颜色。有效值为“RGB 000, 000, 000”到“RGB 255, 255, 255”。
156    Gfclr2    为双色渐变填充的第二种颜色指定颜色。有效值为“RGB 000, 000, 000”到“RGB 255, 255, 255”。
157    Gfclrlum    在单色渐变填充中使颜色变淡(与白色混合)或变深(与黑色混合)。有效值为 0.0(最暗)到 1.0(最亮)
158    Gfclrstate    指定是否在渐变填充中使用单色或者双色. 0.双色渐变填充 1.单色渐变填充
159    Gfname    指定一个渐变填充图案。有效值为 1 到 9。
160    Gfshift    指定在渐变填充中的图案是否是居中或是向左变换移位.0.居中 1.向左上方移动
161    Gridmode    指定打开或关闭栅格。0.关闭栅格 1.打开栅格
162    Gridunit    指定当前视口的栅格间距(X 和 Y 方向)。
163    Gripblock    控制块中夹点的指定。0.只为块的插入点指定夹点 1.为块中的对象指定夹点
164    Gripcolor    控制未选定夹点的颜色。有效取值范围为 1 到 255。
165    Griphot    控制选定夹点的颜色。有效取值范围为 1 到 255。
166    Griphover    控制当光标停在夹点上时其夹点的填充颜色。有效取值范围为 1 到 255。
167    Gripobjlimit    抑制当初始选择集包含的对象超过特定的数量时夹点的显示。
168    Grips    控制“拉伸”、“移动”、“旋转”、“缩放”和“镜像夹点”模式中选择集夹点的使用。
169    Gripsize    以像素为单位设置夹点方框的大小。有效的取值范围为 1 到 255。
170    Griptips    控制当光标在支持夹点提示的自定义对象上面悬停时,其夹点提示的显示.
171    Halogap    指定当一个对象被另一个对象遮挡时,显示一个间隙。
172    Handles    报告应用程序是否可以访问对象句柄。因为句柄不能再被关闭,所以只用于保留脚本的完整性,没有其他影响
173    Hideprecision    控制消隐和着色的精度。
174    Hidetext    指定在执行 HIDE 命令的过程中是否处理由 TEXT、DTEXT 或 MTEXT 命令创建的文字对象。
175    Highlight    控制对象的亮显。它并不影响使用夹点选定的对象。
176    Hpang    指定填充图案的角度。
177    Hpassoc    控制图案填充和渐变填充是否关联.
178    Hpbound    控制 BHATCH 和 BOUNDARY 命令创建的对象类型。
179    Hpdouble    指定用户定义图案的双向填充图案。双向将指定与原始直线成 90 度角绘制的第二组直线。
180    Hpname    设置默认填充图案,其名称最多可包含 34 个字符,其中不能有空格。
181    Hpscale    指定填充图案的比例因子,其值不能为零。
182    Hpspace    为用户定义的简单图案指定填充图案的线间隔,其值不能为零。
183    Hyperlinkbase    指定图形中用于所有相对超链接的路径。如果未指定值,图形路径将用于所有相对超链接。
184    Imagehlt    控制亮显整个光栅图像还是光栅图像边框。
185    Indexctl    控制是否创建图层和空间索引并保存到图形文件中。
186    Inetlocation    存储 BROWSER 命令和“浏览 Web”对话框使用的 Internet 网址。
187    Insbase    存储 BASE 命令设置的插入基点,以当前空间的 UCS 坐标表示。
188    Insname    为 INSERT 命令设置默认块名。此名称必须符合符号命名惯例。
189    Insunits    为从设计中心拖动并插入到图形中的块或图像的自动缩放指定图形单位值。
190    Insunitsdefsource    设置源内容的单位值。有效范围是从 0 到 20。
191    Insunitsdeftarget    设置目标图形的单位值有效范围是从 0 到 20。
192    Intersectioncolor    指定相交多段线的颜色。
193    Intersectiondispla    指定相交多段线的显示。
194    Isavebak    提高增量保存速度,特别是对于大的图形。ISAVEBAK 控制备份文件 (BAK) 的创建。
195    Isavepercent    确定图形文件中所能允许的耗损空间的总量。
196    Isolines    指定对象上每个面的轮廓线的数目。有效整数值为 0 到 2047。
197    Lastangle    存储相对当前空间当前 UCS 的 XY 平面输入的上一圆弧端点角度。
198    Lastpoint    存储上一次输入的点,用当前空间的 UCS 坐标值表示;如果通过键盘来输入,则应添加 (@) 符号。
199    Lastprompt    存储回显在命令行的上一个字符串。
200    Layoutregenctl    指定“模型”选项卡和布局选项卡上的显示列表如何更新。
201    Lenslength    存储当前视口透视图中的镜头焦距长度(单位为毫米)。
202    Limcheck    控制在图形界限之外是否可以创建对象。
203    Limmax    存储当前空间的右上方图形界限,用世界坐标系坐标表示。
204    Limmin    存储当前空间的左下方图形界限,用世界坐标系坐标表示。
205    Lispinit    指定打开新图形时是否保留 AutoLISP 定义的函数和变量,或者这些函数和变量是否只在当前绘图任务中有效
206    Locale    显示用户运行的当前 AutoCAD 版本的国际标准化组织 (ISO) 语言代码。
207    Localrootprefix    保存完整路径至安装本地可自定义文件的根文件夹。
208    Logfilemode    指定是否将文本窗口的内容写入日志文件。
209    Logfilename    为当前图形指定日志文件的路径和名称。
210    Logfilepath    为同一任务中的所有图形指定日志文件的路径。
211    Loginname    显示加载 AutoCAD 时配置或输入的用户名。登录名最多可以包含 30 个字符。
212    Ltscale    设置全局线型比例因子。线型比例因子不能为零。
213    Lunits    设置线性单位。1 科学 2 小数 3 工程 4 建筑 5 分数
214    Luprec    设置所有只读线性单位和可编辑线性单位(其精度小于或等于当前 LUPREC 的值)的小数位位数。
215    Lwdefault    设置默认线宽的值。默认线宽可以以毫米的百分之一为单位设置为任何有效线宽
216    Lwdisplay    控制是否显示线宽。设置随每个选项卡保存在图形中。0 不显示线宽 1 显示线宽
217    Lwunits    控制线宽单位以英寸还是毫米显示。0 英寸 1 毫米
218    Maxactvp    设置布局中一次最多可以激活多少视口。MAXACTVP 不影响打印视口的数目。
219    Maxsort    设置列表命令可以排序的符号名或块名的最大数目。如果项目总数超过了本系统变量的值,将不进行排序。
220    Mbuttonpan    控制定点设备第三按钮或滑轮的动作响应。
221    Measureinit    设置初始图形单位(英制或公制)。
222    Measurement    仅设置当前图形的图形单位(英制或公制)。
223    Menuctl    控制屏幕菜单中的页切换。
224    Menuecho    设置菜单回显和提示控制位。
225    Menuname    存储菜单文件名,包括文件名路径。
226    Mirrtext    控制 MIRROR 命令影响文字的方式。0 保持文字方向 1 镜像显示文字
227    Modemacro    在状态行显示字符串,诸如当前图形文件名、时间/日期戳记或指定的模式。
228    Mtexted    设置应用程序的名称用于编辑多行文字对象。
229    Mtextfixed    控制多行文字编辑器的外观.
230    Mtjigstring    设置当MTEXT命令使用后,在光标位置处显示样例文字的内容。
231    Mydocumentsprefix    保存完整路径至当前登录用户的“我的文档”文件夹。
232    Nomutt    禁止显示信息,即不进行信息反馈(如果通常情况下并不禁止显示这些信息)。
233    Obscuredcolor    指定遮掩行的颜色。
234    Obscuredltype    指定遮掩行的线型。
235    Offsetdist    设置默认的偏移距离。
236    Offsetgaptype    当偏移多段线时,控制如何处理线段之间的潜在间隙。
237    Olehide    控制 AutoCAD 中 OLE 对象的显示。
238    Olequality    控制嵌入 OLE 对象的默认质量级别。
239    Olestartup    控制打印嵌入 OLE 对象时是否加载其源应用程序。加载 OLE 源应用程序可以提高打印质量。
240    Orthomode    限制光标在正交方向移动。
241    Osmode    使用位码设置“对象捕捉”的运行模式
242    Osnapcoord    控制是否从命令行输入坐标替代对象捕捉。
243    Paletteopaque    控制窗口透明性。
244    Paperupdate    控制 AutoCAD R14 或更早版本中创建的没有用 AutoCAD 2000 或更高版本格式保存的图形的默认打印设置
245    Pdmode    控制如何显示点对象。
246    Pdsize    设置显示的点对象大小。
247    Peditaccept    抑制在使用PEDIT时,显示"选取的对象不是多段线"的提示。
248    Pellipse    控制由 ELLIPSE 命令创建的椭圆类型。
249    Perimeter    存储由 AREA、DBLIST 或  LIST 命令计算的最后一个周长值。
250    Pfacevmax    设置每个面顶点的最大数目。
251    Pickadd    控制后续选定对象是替换还是添加到当前选择集。
252    Pickauto    控制“选择对象”提示下是否自动显示选择窗口。
253    Pickbox    以像素为单位设置对象选择目标的高度。
254    Pickdrag    控制绘制选择窗口的方式。
255    Pickfirst    控制在发出命令之前(先选择后执行)还是之后选择对象。
256    Pickstyle    控制编组选择和关联填充选择的使用。
257    Platform    指示 AutoCAD 工作的操作系统平台。
258    Plinegen    设置如何围绕二维多段线的顶点生成线型图案。
259    Plinetype    指定 AutoCAD 是否使用优化的二维多段线。
260    Plinewid    存储多段线的默认宽度。
261    Plotrotmode    控制打印方向。
262    Plquiet    控制显示可选对话框以及脚本和批处理打印的非致命错误。
263    Polaraddang    包含用户定义的极轴角。
264    Polarang    设置极轴角增量。值可设置为 90、45、30、22.5、18、15、10 和 5。
265    Polardist    当 SNAPTYPE 系统变量设置为 1(极轴捕捉)时,设置捕捉增量。
266    Polarmode    控制极轴和对象捕捉追踪设置。
267    Polysides    为 POLYGON 命令设置默认边数。取值范围为 3 到 1024。
268    Popups    显示当前配置的显示驱动程序状态。
269    Projectname    为当前图形指定工程名称。
270    Projmode    设置修剪和延伸的当前“投影”模式。
271    Proxygraphics    指定是否将代理对象的图像保存在图形中。
272    Proxynotice    在创建代理时显示通知。0 不显示代理警告 1 显示代理警告
273    Proxyshow    控制图形中代理对象的显示。
274    Proxywebsearch    指定 AutoCAD 是否检查 Object Enabler。
275    Psltscale    控制图纸空间的线型比例。
276    Pstylemode    指示当前图形处于“颜色相关打印样式”还是“命名打印样式”模式。
277    Pstylepolicy    控制对象的颜色特性是否与其打印样式相关联。
278    Psvpscale    为所有新创建的视口设置视图比例因子。
279    Pucsbase    存储定义正交 UCS 设置(仅用于图纸空间)的原点和方向的 UCS 名称。
280    Qtextmode    控制文字如何显示。
281    Rasterpreview    控制 BMP 预览图像是否随图形一起保存。
282    Refeditname    显示正进行编辑的参照名称。
283    Regenmode    控制图形的自动重生成。
284    Rememberfolders    控制标准的文件选择对话框中的“查找”或“保存”选项的默认路径。
285    Reporterror    控制如果 AutoCAD 异常结束时是否可以寄出一个错误报告到Autodesk.
286    Roamablerootprefix    保存完整路径至安装可移动自定义文件的根文件夹。
287    Rtdisplay    控制实时 ZOOM 或 PAN 时光栅图像的显示。存储当前用于自动保存的文件名。
288    Savefilepath    指定 AutoCAD 任务的所有自动保存文件目录的路径。
289    Savename    在保存当前图形之后存储图形的文件名和目录路径。
290    Savetime    以分钟为单位设置自动保存的时间间隔。
291    Screenboxes    存储绘图区域的屏幕菜单区显示的框数。
292    Screenmode    存储指示 AutoCAD 显示模式的图形/文本状态的位码值。
293    Screensize    以像素为单位存储当前视口的大小(X 和 Y 值)。
294    Sdi    控制 AutoCAD 运行于单文档还是多文档界面。
295    Shadedge    控制着色时边缘的着色。
296    Shadedif    以漫反射光的百分比表示,设置漫反射光与环境光的比率(如果 SHADEDGE 设置为 0 或 1)。
297    Shortcutmenu    控制“默认”、“编辑”和“命令”模式的快捷菜单在绘图区域是否可用。
298    Shpname    设置默认的形名称(必须遵循符号命名惯例)。
299    Sigwarn    控制打开带有数字签名的文件时是否发出警告。
300    Sketchinc    设置 SKETCH 命令使用的记录增量。
301    Skpoly    确定 SKETCH 命令生成直线还是多段线。
302    Snapang    为当前视口设置捕捉和栅格的旋转角。旋转角相对当前 UCS 指定。
303    Snapbase    相对于当前 UCS 为当前视口设置捕捉和栅格的原点。
304    Snapisopair    控制当前视口的等轴测平面。0 左 1 上 2 右
305    Snapmode    打开或关闭“捕捉”模式。
306    Snapstyl    设置当前视口的捕捉样式。
307    Snaptype    设置当前视口的捕捉类型。
308    Snapunit    设置当前视口的捕捉间距.
309    Solidcheck    打开或关闭当前 AutoCAD 任务中的实体校验。
310    Sortents    控制 OPTIONS 命令的对象排序操作(从“用户系统配置”选项卡中执行)。
311    Splframe    控制样条曲线和样条拟合多段线的显示。
312    Splinesegs    设置每条样条拟合多段线(此多段线通过 PEDIT 命令的“样条曲线”选项生成)的线段数目。
313    Splinetype    设置 PEDIT 命令的“样条曲线”选项生成的曲线类型。
314    Standardsviolation    指定当创建或修改非标准对象时,是否通知用户当前图形中存在标准违规。
315    Startup    控制当使用 NEW 和 QNEW 命令创建新图形时是否显示“创建新图形”对话框。
316    Surftab1    为 RULESURF 和 TABSURF 命令设置生成的列表数目。
317    Surftab2    为 REVSURF 和 EDGESURF 命令设置在 N 方向上的网格密度。
318    Surftype    控制 PEDIT 命令的“平滑”选项生成的拟合曲面类型。
319    Surfu    为 PEDIT 命令的“平滑”选项设置在 M 方向的表面密度。
320    Surfv    为 PEDIT 命令的“平滑”选项设置在 N 方向的表面密度。
321    Syscodepage    指示由操作系统确定的系统代码页。
322    Tabmode    控制数字化仪的使用。关于使用和配置数字化仪的详细信息,请参见TABLET 命令。
323    Target    存储当前视口中目标点的位置(以 UCS 坐标表示)。
324    Tdcreate    存储创建图形的当地时间和日期。
325    Tdindwg    存储所有的编辑时间,即在保存当前图形之间占用的总时间。
326    Tducreate    存储创建图形的通用时间和日期。
327    Tdupdate    存储最后一次更新/保存图形的当地时间和日期。
328    Tdusrtimer    存储用户消耗的时间计时器。
329    Tduupdate    存储最后一次更新/保存图形的通用时间和日期。
330    Tempprefix    包含用于放置临时文件的目录名(如果有的话),带路径分隔符。
331    Texteval    控制处理使用 TEXT 或 -TEXT 命令输入的字符串的方法。
332    Textfill    控制打印和渲染时 TrueType 字体的填充方式。
333    Textqlty    设置打印和渲染时 TrueType 字体文字轮廓的镶嵌精度。
334    Textsize    设置以当前文本样式绘制的新文字对象的默认高度(当前文本样式具有固定高度时此设置无效)。
335    Textstyle    设置当前文本样式的名称。
336    Thickness    设置当前的三维厚度。
337    Tilemode    将“模型”选项卡或最后一个布局选项卡置为当前。
338    Tooltips    控制工具栏提示的显示:0 不显示工具栏提示 1 显示工具栏提示
339    Tracewid    设置宽线的默认宽度。
340    Trackpath    控制显示极轴和对象捕捉追踪的对齐路径。
341    Trayicons    控制是否在状态栏上显示系统托盘.
342    Traynotify    控制是否在状态栏系统托盘上显示服务通知.
343    Traytimeout    控制服务通知显示的时间长短(用秒)。有效值范围为 0 到 10。
344    Treedepth    指定最大深度,即树状结构的空间索引可以分出分支的最大数目。
345    Treemax    通过限制空间索引(八叉树)中的节点数目,从而限制重生成图形时占用的内存。
346    Trimmode    控制 AutoCAD 是否修剪倒角和圆角的选定边。
347    Tspacefac    控制多行文字的行间距(按文字高度的比例因子测量)。有效值为 0.25 到 4.0。
348    Tspacetype    控制多行文字中使用的行间距类型。
349    Tstackalign    控制堆叠文字的垂直对齐方式。
350    Tstacksize    控制堆叠文字分数的高度相对于选定文字的当前高度的百分比。有效值为 25 到 125。
351    Ucsaxisang    存储使用 UCS 命令的 X、Y 或 Z 选项绕轴旋转 UCS 时的默认角度值。
352    Ucsbase    存储定义正交 UCS 设置的原点和方向的 UCS 名称。有效值可以是任何命名 UCS。
353    Ucsfollow    用于从一个 UCS 转换到另一个 UCS 时生成平面视图。
354    Ucsicon    使用位码显示当前视口的 UCS 图标。
355    Ucsname    存储当前空间当前视口的当前坐标系名称。如果当前 UCS 尚未命名,则返回一个空字符串。
356    Ucsorg    存储当前空间当前视口的当前坐标系原点。该值总是以世界坐标形式保存。
357    Ucsortho    确定恢复正交视图时是否同时自动恢复相关的正交 UCS 设置。
358    Ucsview    确定当前 UCS 是否随命名视图一起保存。
359    Ucsvp    确定视口的 UCS 保持不变还是作相应改变以反映当前视口的 UCS 状态。
360    Ucsxdir    存储当前空间当前视口中当前 UCS 的 X 方向。
361    Ucsydir    存储当前空间当前视口中当前 UCS 的 Y 方向。
362    Undoctl    存储指示 UNDO 命令“自动”和“控制”选项状态的位码值。
363    Undomarks    存储“标记”选项放置在UNDO 控制流中的标记数目。
364    Unitmode    控制单位的显示格式。
365    Viewctr    存储当前视口中视图的中心点。该值用 UCS 坐标表示。
366    Viewdir    存储当前视口的观察方向。用 UCS 坐标表示。它将相机点描述为到目标点的三维偏移量。
367    Viewmode    使用位码值存储控制当前视口的“查看”模式。
368    Viewsize    按图形单位存储当前视口的高度。
369    Viewtwist    存储当前视口的视图扭转角。
370    Visretain    控制依赖外部参照的图层的可见性、颜色、线型、线宽和打印样式(如果 PSTYLEPOLICY 设置为 0)。
371    Vsmax    存储当前视口虚屏的右上角。该值用 UCS 坐标表示。
372    Vsmin    存储当前视口虚屏的左下角。该值用 UCS 坐标表示。
373    Whiparc    控制圆和圆弧是否平滑显示。
374    Wmfbkgnd    控制 AutoCAD 对象在其他应用程序中的背景显示是否透明。
375    Wmfforegnd    控制 AutoCAD 对象在其他应用程序中的前景色指定。
376    Worlducs    指示 UCS 是否与 WCS 相同。0. UCS 与 WCS 不同 1. UCS 与 WCS 相同
377    Worldview    确定响应 3DORBIT、DVIEW 和  VPOINT 命令的输入是相对于 WCS(默认)还是相对于当前 UCS。
378    Writestat    指示图形文件是只读的还是可写的。开发人员需要通过 AutoLISP 确定文件的读写状态。
379    Xclipframe    控制外部参照剪裁边界的可见性。0 剪裁边界不可见 1 剪裁边界可见
380    Xedit    控制当前图形被其他图形参照时是否可以在位编辑。0 不能在位编辑参照 1 可以在位编辑参照
381    Xfadectl    控制正被在位编辑的参照的褪色度百分比。有效值从 0 到 90
382    Xloadctl    打开/关闭外部参照的按需加载,并控制是打开参照图形文件还是打开参照图形文件的副本。
383    Xloadpath    创建一个路径用于存储按需加载的外部参照文件临时副本。
384    Xrefctl    控制 AutoCAD 是否写入外部参照日志 (XLG) 文件。0 不写入记录文件 1 写入记录文件
385    Xrefnotify    控制更新或缺少外部参照时的通知。
386    Zoomfactor    接受一个整数,有效值为 0 到 100。数字越大,鼠标滑轮每次前后移动引起改变的增量就越多。











本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
"觉得好,就打赏"
还没有人打赏,支持一下

本帖被以下淘专辑推荐:

  • · 学习|主题: 24, 订阅: 0
发表于 2019-3-3 22:05 | 显示全部楼层
1291500406 发表于 2019-2-26 09:16
贱人工具箱5.8被人反编译后改成了破坏之王的名字 ,辛苦大半年写的,在别人手上反编译几分钟就变成自己的 ...

这样一说,坚定了我不把单位里一位老师傅编写程序打包后的发网上了,怕别人编译了。
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2019-2-26 09:16 | 显示全部楼层
本帖最后由 1291500406 于 2019-2-26 09:17 编辑
flythinking 发表于 2019-2-26 08:35
石头准备起飞啦,必强!

贱人工具箱5.8被人反编译后改成了破坏之王的名字 ,辛苦大半年写的,在别人手上反编译几分钟就变成自己的了,刚发表的工具,几分钟别人反编译发给你源码,改了作者,改了名称,什么感受,lisp的安全性太低,导致很少有人开发vlx工具了
发表于 2019-1-22 21:33 | 显示全部楼层
好东西,谢谢分享。。。。。。。
发表于 2019-1-22 21:57 | 显示全部楼层
谢谢分享,谢谢分享,谢谢分享,
发表于 2019-1-23 08:29 | 显示全部楼层
好东西! 谢谢分享!!!!!
发表于 2019-1-25 10:23 | 显示全部楼层
最近正准备学习AutoLisp,好资料先收藏了,谢谢
 楼主| 发表于 2019-1-25 10:32 | 显示全部楼层
zhangn 发表于 2019-1-25 10:23
最近正准备学习AutoLisp,好资料先收藏了,谢谢

我那词库 命令ccv 你用一下, 加友按钮 有网盘学习资料  
发表于 2019-1-25 12:07 | 显示全部楼层
看了下
大量高版本新增的系统参数都没有
 楼主| 发表于 2019-1-25 12:12 | 显示全部楼层
masterlong 发表于 2019-1-25 12:07
看了下
大量高版本新增的系统参数都没有

我还没上传
 楼主| 发表于 2019-1-29 20:54 | 显示全部楼层
lisp 资料已更新
发表于 2019-2-24 16:45 | 显示全部楼层
确实很棒的东西
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-28 05:56 , Processed in 0.534237 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表