AutoLISP提供了大量的预定义函数。若将函数名(大小写都可)作为表中的第一个元素函数变元(若有的话)作为表中后面的元素,就可以调用那个函数。本章按字母顺序列出AutoLISP所有基本函数。用户会发现其中许多函数都是标准函数,可在LISP程序设计语言中找到。还有一些函数是由 AutoCAD提供的且专用于交互图形环境。
1 FLATLAND 系统变量--与老版本的兼容性
AutoLISP版本10支持AutoCAD的最新增强型三维图形功能,则时继续保证与AutoCAD 老版本的兼容性。FLATLAND系统变量就是用来控制该兼容性的。当FLATLAND为零时,实现新三维功能;否则各函数操作与AutoLISP版本9的一样。FLATLANDR的设置作用于下列
AutoLISP函数:
DISTANCE GRREAD POLAR
ENTGET INITGET TBLNEXT
GETDIST INTERS TBLSEARCH
GETPOINT OSNAP
在各函数说明中,已注明FLATLAND对上述函数起作用的方式。
2 ( + 《数》 《数》 。。。)
这个函数返回所有《数》的总和。其中的《数》可以是整型或实型的。如果所有的《数》都是整数,其结果也是整数;如果其中有一个是实型的,那么其它整型数将转换为实型
数结果将是实型数。例如:
(+ 1 2) returns 3
(+ 1 2 3 4.5) returns 10.5
(+ 1 2 3 4.0) returns 10.0
3 ( - 《数》 《数》 。。。)
这个函数把第一个《数》减去第二个《数》,返回它们的差。如果给定的《数》多于两个,那么将第一个《数》减去其后所有数之和,并返回最后的结果。如果只给了一个《数》,即返回零减这个《数》的结果。此函数中的《数》可以是实型或整型,按标准规则进行类型转换。
例如:
(- 50 40) returns 10
(- 50 40.0 2) returns 8.0
(- 50 40.0 2.5) returns 7.5
(- 8) returns -8
4 (* 《数》 《数》。。。)
这个函数返回所有《数》的乘积。其中《数》可以是实型或整型。按标准规则进行类型转换
例如:
(* 2 3) returns 6
(* 2 3 4.0) returns 24.0
(* 3 -4.5) returns -13.5
5 (/ 《数》 《数》。。。)
这个函数将第一个《数》除以第二个《数》,返回其商。如果给出的《数》多于两个,则把第一个《数》除以其它所有《数》的乘积,并返回最后的商。此函数中的《数》可以是实型或整型,类型的转换按标准规则进行。例如:
(/ 100 2) returns 50
(/ 100 2.0) returns 50.0
(/ 100 20.0 2) returns 2.5
(/ 135 360) returns 0
(/ 135 360.0) returns 0.375
6 (= 《原子》 《原子》。。。)
这是“等于”关系函数。如果所有指定的《原子》在数值上是相等的,则返回T;否则返回空(nil)。这个函数适用于数和字符串。例如:
(= 4 4.0) returns T
(= 20 388) returns nil
(= 2.4 2.4 2.4) returns T
(= 499 499 500) returns nil
(= “me” “me”) returns T
(= “me” “you”) returns nil
7 (/= 《原子1》 《原子2》。..)
这是一个“不等于”关系函数。如果《原子1》数值上不等于《原子2》,则返回T;否则返回nil,如果提供的《变元》多于两个,则函数无定义。例如:
(/= 10 20) returns T
(/= “you” “you”) returns nil
(/= 5.43 5.44) returns T
8 (《 《原子》 《原子》。。。)
这是一个“小于”关系函数。如果第一个《原子》值小于第二个,则返回T;否则返回nil,如果所给的《原子》多于两个,那么当每个《原子》都小于其右边的《原子》时,则返回T.
例如:
(《 10 20) returns T
(《 “b” “c”) returns T
(《 357 33.2) returns nil
(《 2 3 88) returns T
(《 2 3 4 4) returns nil
9 (《= 《原子》 《原子》。。。)
这是一个“小于或等于”关系函数。如果第一个《原子》值大于或等于第二个原子,则返回T;否则返回nil.如果所给的《原子》多于两个,则当每一个《原子》都小于或等于其右边的《原子》时,才返回T.例如:
(《= 10 20) returns T
(《= “b” “b”) returns T
(《= 357 33.2) returns nil
(《= 2 9 9) returns T
(《= 2 9 4 5) returns nil
10 (》 《原子》 《原子》。。。)
这是一个“大于”关系函数。如果第一个《原子》值大于第二个,则返回T;否则返回nil,若所给定的《原子》多于两个,当每个《原子》都大于其右边的《原子》时,则返回T. 例如:
(》 120 17) returns T
(》 “c” “b”) returns T
(》 3.5 1792) returns nil
(》 77 4 2) returns T
(》 77 4 4) returns nil
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』