首页 理论教育AutoLISP变量和表达式全面解析

AutoLISP变量和表达式全面解析

【摘要】:组成AutoLISP程序的元素是表达式、变量与各种运算符。表达式用于取得结果数据,是包含有各种运算符号并按AutoLISP的规则书写的字符串。)AutoLISP使用数目较多、功能各异的函数.每一个函数均有一个系统中唯一的名称。在AutoLISP中,一个完整的表达式必须包含在一对圆括号内,每一个子表达式必须由一对圆括号标注明白。在AutoCAD的“Command:”提示下输入一个表达式,则显示该表达式的值。INCHAutoLISP使用一个变量集来保存信息。

组成AutoLISP程序的元素是表达式、变量与各种运算符。变量可以是整型、实型、点、字符串。

变量可以被赋值(其值包括字符串)和进行算术、逻辑运算符。表达式用于取得结果数据,是包含有各种运算符号并按AutoLISP的规则书写的字符串。一个表达式的值可以用于对AutoCAD提示的响应。表达式的书写格式为:

(函数名[参数]…)

AutoLISP使用数目较多、功能各异的函数.每一个函数均有一个系统中唯一的名称。参数是由用户提供的给函数操作处理的信息。例如,下列表达式将把值25.4送入变量“INCH”中:

(setqINCH25.4)

该表达式中的setq为AutoLISP用来为变量赋值的函数。INCH是用户定义的一个变量,它与后面的数字25.4共同组成参数项。执行该表达式后系统将建立该变量,并且将后面的值赋给它。参数也可以是一个表达式,使用时只需要使用一对圆括号将表述式括起来,AutoLISP就能自动给予识别。这样在同一个表达式中,可以包含多条子表达式,而子表达式还可以拥有自己的子表达式。这种嵌套可以在一个很深的范围内满足用户的各种需要。

在有些表达式中,允许用户加入可以在屏幕上显示的,用于操作提示信息的字符串。例如:

(setq p1(getpoint"Pick first corner Point:"))(www.chuimin.cn)

在这一条表达式中,p1是一个表示坐标点的变量,getpoint是一个用于获取坐标点的函数。

在AutoLISP中,一个完整的表达式必须包含在一对圆括号内,每一个子表达式必须由一对圆括号标注明白。在AutoCAD的“Command:”提示下输入一个表达式,则显示该表达式的值。然后“Command:”提示将重新出现。一个AutoLISP程序是由若干个表达式所组成的ASCII码文本文件(其后缀名为LSP),如果在AutoCAD的“command:”提示下读入一个AutoLISP程序文件,或者单个输入有错误的表达式,则屏幕上将提示:

n>

该提示指出n个圆括号不配对。此时可以输入n个右圆括号来消除错误。(“n”是一个正整数)

在AutoCAD提示请求一个数值时,可以在变量名称前加一个惊叹号(!)来引用该变量的值。如:

Column distance:!INCH

AutoLISP使用一个变量集来保存信息。变量不是一个恒定的常数。其值可以由用户控制改变,而当AutoCAD系统在计算时也将控制某些变量的值。