AutoLISP提供了丰富的表处理函数,灵活运用这些函数可以满足表处理的一般要求。下面我们来介绍表处理的基本函数。length函数返回指出一个表中元素数目的一个整型数。例如:4.car函数cdr函数及其组合函数。AutoLISP支持car和cdr函数的拼接调用,其拼接深度最多可达四级。其相当于car函数与cdr函数的嵌套。如果在表<list>中,不出现表达式<expr>,本函数返回nil。listp函数用于检查某个项是否是表。......
2023-11-02
1.list函数。
list函数可以将任意数目的表达式组合成一个表。在AutoLISP中,本函数经常用于定义的一个2D或3D点变量(由两个或三个实数组成的一个表)。如果表中没有变量或没有未确定的项,可以用单引号括起一个表,能达到list函数同样的效果。例如:'(3.96.7)等价于(list3.96.7)。这对生成关联表或定义点表来说是非常方便的方法。本函数的相关函数是quota。
list函数的返回值为一个表,如果list函数不带任何自变量,即返回nil,为一个空表。同时,list函数在调用过程中对表内的变量进行一次求值,所以返回的表元素是自变量的值而不是自变量本身。
例如:
2.cons函数。
cons是AutoLISP的基本表构造函数。cons函数把第一个元素<newfirstelement>加到第二个元素<list>开头,构成一个新表后返回。变元<newfirstelement>可以是一个原子或一个表。cons函数也可以用在变元<list>是原子的情况。在这种情况下,cons函数通常用于构造称为点对的结构。当显示一个点对时,AutoLISP会在第一个元素和第二个元素之间显示一个圆点。使用cdr函数可以返回一个点对的第二个原子。点对是一种特属类型的表,处理普通表的某些函数通常不能接受点对作为变元。如果希望在表的最后加上一个元素可以使用如下程序式(reverse(cons<new_first_element>(reverse<list>)))。
例如:
3.append函数。
该函数将任意多个表组合成一个表。append函数将所有<list>串在一起,组合成一个新表。append、cons和list是AutoLISP的三个基本的表构造函数。而append函数的每个自变量必须是表,不可以为原子,并且它将每个自变量的元素重新组合称为一个大表。而list函数是将自变量作为返回表的元素输出。(www.chuimin.cn)
例如:
4.subst函数。
subst函数查找表中所有项,如果表中有<old>存在,则把所有的<old>用<new>代替,函数返回替换后的新表。如果表中没有<old>存在,则函数值为原表。
例如:
5.acadstrlsort函数。
该函数以ASCII码字母顺序对一个字符串表进行排序,返回排序后的结果。acadstrlsort函数是一个外部函数。它是由ADS应用程序ACADAPP定义的。变元<list>是要进行排序的字符串表。acad_strlsort函数返回重新排序后的相同字符串表。如果变元<list>是一个非法表,或者,如果没有足够的内存来时行排序,acad_strlsort函数返回nil.
例如:
AutoLISP提供了丰富的表处理函数,灵活运用这些函数可以满足表处理的一般要求。下面我们来介绍表处理的基本函数。length函数返回指出一个表中元素数目的一个整型数。例如:4.car函数cdr函数及其组合函数。AutoLISP支持car和cdr函数的拼接调用,其拼接深度最多可达四级。其相当于car函数与cdr函数的嵌套。如果在表<list>中,不出现表达式<expr>,本函数返回nil。listp函数用于检查某个项是否是表。......
2023-11-02
每一个已加载的ARX应用程序和它的路径都用双引号引起来作为表中的一项。在加载ARX应用程序时,会对指定的ARX应用程序的有效性进行验证。在使用arxload加载一个ARX应用程序之前,也许你应该用arx函数检测现行已加载的ARX应用程序。本函数用于加载定义了若干条命令的一个相关ARX应用程序文件。当在命令提示符Command:下第一次录入APP1、APP2或APP3命令之一时,ARX应用程序就会被加载,然后接着执行要执行的那个命令。......
2023-11-02
AutoLISP语言没有“语句”这一术语,AutoLISP程序一般是由一个或一系列按顺序排列的标准表所组成。AutoLISP程序的书写格式有如下特点:由于AutoLISP语言的一切成分都是函数,而所有函数又以表结构形式存在,所以AutoLISP程序的所有括号都需要左右匹配。AutoLISP程序阅读函数时,按从左到右的规则进行。AutoLISP求值器总是忽略每一行中分号以后的部分。......
2023-11-02
对一个函数来说,出现在函数体中的除局部约束变量以外的任何变量均称为全局变量。函数求值后返回最后一个表达式的求值结果11.0,前面的表达是只有副作用。apply函数可以处理内建式和用户定义两种类型的函数。trace函数为指定的一个或多个函数设置跟踪标志。......
2023-11-02
本函数是AutoLISP中一个基本的赋值函数。将变量a的值设置为5.0,以后无论何时当对变量a进行求值时,它都会返回实型数5.0。全局变量可由任何函数访问和修改,或者在任一表达式中使用局部变量仅在定义它们的函数求值期间有意义。但当该函数退出时,全局变量恢复原值。quote函数最主要的特点就是不对表达式进行求值。为防止这种错误的产生,引用表就必须使用quote函数禁止对表求值。......
2023-11-02
使用AutoLISP函数,将为该命令赋予非常有意义的使用价值。用户可以使用的AutoLISP函数以及部分函数其功能如下:1.标准数学函数。目前AutoLISP提供的矢量计算功能非常强大。表14-5 辅助计算函数4.输入表达式在AutoCADCAL命令的提示下,用户应当根据不同的计算需要输入一条不同形式的表达式。如果用户输入一个小于1的角度,必须在“分”前给出0。......
2023-11-02
数的关系运算函数在执行时对其每一个参数都要求值,然后从左到右依次比较两个参数在数值上是否满足比较函数所测试的关系,如果所有参数都满足测试关系,则返回T,否则返回nil。如果每一个变元在数值上都大于它右边的变元,则返回T;否则,返回nil。例如:4.大于等于函数 >=。每一个<numstr>既可以是一个数,也可以是一个字符串。例如:6.不等于函数 /=。......
2023-11-02
绘制如图6-33所示的苗木表。图6-31 插入公式图6-32 进行计算图6-33 苗木表参见光盘光盘动画演示\第6章\苗木表.avi绘制步骤:1.单击“样式”工具栏中的“表格样式”按钮,命令行提示与操作如下:系统打开“表格样式”对话框,如图6-34所示。图6-34 “表格样式”对话框2.单击“新建”按钮,系统打开“创建新的表格样式”对话框,如图6-35所示。多行文字编辑器会再次出现,用户可以进行修改。图6-40 快捷菜单图6-41 改变单元格大小图6-42 苗木表......
2023-11-02
相关推荐