AutoLISP详细讲解

合集下载

AutoLisp入门篇

AutoLisp入门篇

AutoLISP入门单元一:AutoLISP主角登场 (2)单元二:AutoLISP的关键、基本结构及语法 (4)单元三:快速分类浏览AutoLISP功能函数(一) (10)单元四:快速分类浏览AutoLISP功能函数(二) (13)单元五:轻松快速的掌握AutoLISP设计技巧 (16)单元六:像素数据的取得与活用技巧(一) (21)单元七:像素数据的取得与活用技巧(二) (25)单元八:新手上路-参数设计的关键技巧 (32)单元一:AutoLISP主角登场一. AutoLISP 是何方神圣?1、AutoLISP是AutoCAD的最佳拍檔!2、AutoLISP内含于AutoCAD软件内,不用另外花钱买!3、AutoLISP是强化AutoCAD最好、最直接的『程序语言』!4、AutoLISP易学、易用,即使不会程序设计的AutoCAD使用者,都能在最短的时间内,写出令人惊讶、赞叹的功能!若说AutoLISP的出现,是替AutoCAD 创造一片天的『最大功臣』,实不为过一点也不夸张!5、AutoLISP希望您去学习它、改善它、发挥它、享受它.真的!它的威力、魅力无穷!二. AutoLISP 程序语言的特质分析:学习AutoLISP是非常容易的,对初学者而言,即使没有学习过任何的程序语言,都能很快的上手,写出精彩漂亮的AutoLISP程序!语法简单:不用特殊的变量宣告,非常富有弹性,比起其它的程序语言,它的语法可说是非常简单而有其独特的风格!功能函数强大:除一般性的功能函数外,又拥有为数不少控制配合AutoCAD的特殊函数,再加上AutoLISP可直接呼叫执行所有AutoCAD的指令,以及掌握运用所有的AutoCAD系统变量,功能之强大令人欣喜不已!撰写的环境不挑剔:只要是一般的文书编辑软件都适用! 如:Windows的记事本、PE2、PE3、DW3、书中仙、汉书、EDIT....等直译式程序:不用再作编译,『即写即测、即测即用』,马上可以在AutoCAD中响应效果,马上就有成就感!横跨各作业平台:悠然自得,虽然AutoCAD有DOS、Windows版本之分但是AutoLISP却可在不改写的原貌下,加载与执行!三.撰写AutoLISP 的动机?1、欲强化AutoCAD 原有指令时.2、欲创造更有用的AutoCAD 新指令.3、欲简化繁琐的环境设定或绘图步骤时.4、欲处理参数式绘图时.5、欲做图面资料读文件、写文件.6、欲做AutoCAD 简报展示时.7、欲达到真正灵活掌控AutoCAD 时.8、欲提升自己跨上AutoCAD 高手列车时.四.AutoLISP 的效益评估?1. 对公司负责人或设计主管而言:A. 也许某员工或干部花了20个小时撰写一个AutoLISP程序,表面上,这将近三天的时间,他连一张图都没有画,甚至可能偶有发呆、沈思,若此程序一天可以替公司绘图部门节省1小时绘图时间,那算一算,只要20天就抵销开发成本,而20天以后都是赚的,『用的愈久,省的愈多』!B. 若员工皆有此动力,在不影响正常工作,『鼓励』都来不及,那有『压抑』的道理,甚至还要派遣优秀人员出去受训,学习更好的设计技巧与创意呢?!C. 千万不要因为您的不懂或压抑,SHOW您的权威与POWER,如此,不但对员工造成打击,甚至您可能成为阻碍了公司计算机化进步的罪魁祸首D. 当然,若要撰写的程序很多,内部设计人员的程序功力距离太远,达成需求的时间反而变得遥遥无期,那倒不如求助于市面上已有的相关AutoCAD 支持软件。

第二讲 AutoLISP语言基础

第二讲 AutoLISP语言基础

《2.4基本函数》
2.4 AutoLISP基本函数(六类)
(一)数学运算函数(17种)
+、-、*、/、1-、1+、abs、sin、cos、atan、 sqrt、min、max、expt、log、gcd、rem
1) (+ 〈数〉〈数〉… ) 功能 : 求表中所有整数或实数的和。例如 : Command:(+ 1.2 3.1 3.8) 返回:8.1 2)(- 〈数〉〈数〉… ) 功能 :求表中第1个数减去后面所有数的差 ,例如 : Command:(- 8.1 5) 返回:3.1
《2.3程序结构》
在程序中使用内部函数的规则:
1)内部函数必须放在表中第一个元素的位 置,且所有括号都必须左右配对; 2)函数与参数之间至少用一个空格来分开, 多个空格和一个空格作用相同; 3)一个表可分成多行书写,一行也可以书 写多个表; 4)字符不分大小写,分号后的字符为注释。
《2.3程序结构》
《2.3程序结构》
AutoLISP程序结构实例:
;*********************************************** ;** 这个程序计算 a 和 b 平方和的平方根 ** ;** 用法:交互输入两个实型数 a ,b的值 ** ;** 该程序计算并输出结果在屏幕上。 ** ;*********************************************** (defun sqtab (/ a b) ;定义函数 (setq a (getreal “\n a=:”)) ;等待输入a的值 (setq b (getreal “\n b=:”)) ;等待输入b的值 (setq c (sqrt (+ (* a a) (* b b)))) ;计算平方根 (print “c=“) (princ c) (princ) );end

AutoLISP详细讲解

AutoLISP详细讲解

AutoLISP详细讲解关于AutoLISPAutoLISP是由Autodesk公司开发的一种LISP程序语言(LISP是List Processor的缩写)。

第一篇关于LISP的参考文献是由John McCarthy 在1960年4月的《ACM通讯》中发表的。

除了FORTRAN和COBOL,大多数在六十年代早期开发出来的语言都过时了,可是LISP 却生下来,并且已经成为人工智能(AI)的首选程序序言。

AutoLISP解释程序位于AutoCAD 软件包中,然而AutoCAD R2.17及更低版本中并不包含AutoLISP解释程序,这样,只有通过AutoCAD R2.18及更高版本才可以使用AutoLISP语言。

AutoCAD软件包中包含大多数用于产生图形的命令,但仍有某些命令末被提供。

例如,AutoCAD中没有在图形文本对象内绘制矩形及作全局改变的命令。

通过AutoLISP,你可以使用AutoLISP程序语言编制能够在图形文本对象内绘制矩形或作全局选择性改变的程序。

事实上,可以用AutoLISP编制任何程序,或把它嵌入到菜单中,这样定制你的系统会取得更高的效率。

现在,已经有数以百计的第三方软件开发人员使用AutoLISP语言编制各种应用程序软件包,例如,本文作者开发了一个名为SMLayout的软件包,用它可以产生各种复杂几何图形的平面布局图,这些几何图形包括管道的交叉部、过渡都、圆柱、弯管接头、圆锥以及罐顶。

目前社会上非常需要AutoLISP程序员为应用软件及客户菜单的开发提供顾问。

在本章中,我们假定读者已经熟悉了AutoCAD命令及AutoCAD的系统变量。

但是,在开始学习AutoLISP时,却并不需要你是一位AutoCAD或编程专家。

同时,本章还假定读者并无编程方面的知识。

如果你熟悉任何一种编程语言,那么学习AutoLISP就会很容易。

对各种函数的评细探讨以及对例题的逐步讲解会使你学起来很有兴趣。

第五章第二节AUTOLISP程序设计简介

第五章第二节AUTOLISP程序设计简介

§5.2 AutoLISP程序设计一、概述LISP语言(List Processing Language的缩写)是一种表处理语言。

因为LISP在描述表方面有独到之处,且本身灵活而精巧,自创立以来,在人工智能的程序设计中得到广泛应用。

在英、美等国应用尤为普遍。

AutoLISP是LISP语言的一个版本,其独特性在于专门为AutoCAD开发的。

所以AutoLISP仅能运行于AutoCAD软件包环境里。

同样,也正是在AutoCAD内置AutoLISP这样一种灵活、精巧的开发语言,使得AutoCAD得到进一步广泛使用。

1. AutoLISP特点:(1)AutoLISP语言是一种仅能以解释方式运行于AutoCAD内的程序设计语言。

即:脱离AutoCAD环境,它就不能运行。

(2)AutoLISP语言是函数型语言,其函数和数据形式是一致的,即(function argument)·function(函数名):内建函数或用户自定义函数名;·argument(参数):参数种类:①变量(Varibles)②常量(Constants)③其他函数(function)所以表达式可以嵌套.④标志数(flag)⑤可选性参数(optional parameters)因此,表达式的形式是:“先说做什麽,再说对谁做”。

(3)可以在AutoLISP程序中引用AutoCAD的几乎所有功能进行图形处理的自动化,尤其是较深层的应用——对象数据库的操作。

在Visual LISP的协助下,对于AutoCAD进行操作功能上的讨论,LISP仅比ARX少一个功能。

在AutoCAD R14已经不再使用ADS程序设计,取而代之的是ARX 程序设计模式。

ARX一般是在AutoCAD和开发商中使用。

使用Visual C++作为基本程序设计语言,其效率、数据处理和软硬件的控制能力都是相当好的。

但是,要想真正发挥这种开发模式的作用,对于程序设计者的要求也较高。

AutoLISP入门1 - AutoLISP 主角潇洒登场

AutoLISP入门1 - AutoLISP 主角潇洒登场

至可能偶有发呆、沉思,若此程式一天可以替公司绘图部门节省1小时绘图时间,那算一算,只要20天就抵销开发成本,而20天以后都是赚的, 『用的愈久,省的愈多』!B.若员工皆有此动力,在不影响正常工作, 『鼓励』都来不及,那有『压抑』的道理,甚至还要派遣优秀人员出去受训,学习更好的设计技巧与创意呢? !C.千万不要因为您的不懂或压抑,SHOW您的权威与POWER,如此,不但对员工造成打击,甚至您可能成为阻碍了公司电脑化进步的罪魁祸首D.当然,若要撰写的程式很多,内部设计人员的程式功力距离太远,达成需求的时间反而变得遥遥无期,那倒不如求助于市面上已有的相关AutoCAD支援软体。

2. 对设计人员而言 :A.得到一笔提升绩效奖金呢?当然,无形中, 『 AutoCAD高手的封号』也将黄功力又往前迈出了一大步,对个人的成长帮助匪浅,幸运的话,搞不好还可以袍加身,不亦乐乎!!!B.『半桶水、响叮当』 ,千万不要因为会写AutoLISP程式而自傲、孤僻、嚣张起来,功力的增长,只是让您有更多『服务他人、服务公司』的机会,若自恃过重,宁可不要!C.AutoLISP程式功力的累进,是无远弗届的,千万不要『孤芳自赏』 , 『人外有人,天外有天』 ,也许您觉得是『宝贝加三级』的程式,只是其他设计师基本程式中的一部份罢了!D.既然AutoLISP是AutoCAD的『最大功臣』 ,当然不会轻易被舍弃,如此,您的学习,保证不会白费!E.『精益求精』、『虚心求教』、『用心学习、观摩』、『决心成为高手』3. 对程式本身而言 :A.少少的几行,却可能有『大大满意』的时候!!!B.充份掌握了控制、创造AutoCAD的『尚方宝剑』 ,让您在AutoCAD的设计运作中『得心应手』 ,享受无比的快乐与成就感!!!五 . 如何有效的学习 AutoLISP ?1. 先由小程式着手,认识AutoLISP语法规定!2. 浏览所有的AutoLISP功能函数,重要的功能函数要熟记脑海,俗语说的好『一回生,二回熟』 ,除非您不用心,否则没有学不好的道理!!!3. 要懂得偷懒:不要认为在绘图的过程中,繁琐的步骤是合理的,困难的绘图过程是必须忍耐的,试着用AutoLISP解决看看!4. 多观摩别人的程式设计,吸取精华,像海棉一样=> 『吸』、『吸』、『吸』 !!!5. 动手『写』程式比用眼睛看程式,更能够领略深记脑海!6. 随时随地整理您的程式,并加以注解,以免因时间的飞逝,当时用心的成果也烟消云散,忘的一干二净!!!7. 『决心』是学好AutoLISP最重要的关键!8. 期许自己,要由操作者变成创造者!!!。

AutoLisp入门教程

AutoLisp入门教程

單元一:AutoLISP主角瀟灑登場一. AutoLISP 是何方神聖?1.AutoLISP是AutoCAD的最佳拍檔!2.AutoLISP內含於AutoCAD軟體內,不用另外花錢買!3.AutoLISP是強化AutoCAD最好、最直接的『程式語言』!4.AutoLISP易學、易用,即使不會程式設計的AutoCAD使用者,都能在最短的時間內,寫出令人驚訝、讚嘆的功能!5.若說AutoLISP的出現,是替AutoCAD 創造一片天的『最大功臣』,實不為過一點也不誇張!6.AutoLISP希望您去學習它、改善它、發揮它、享受它.真的!它的威力、魅力無窮!二. AutoLISP 程式語言的特質分析:學習AutoLISP是非常容易的,對初學者而言,即使沒有學習過任何的程式語言,都能很快的上手,寫出精彩漂亮的AutoLISP程式!三.撰寫AutoLISP 的動機?1.欲強化AutoCAD 原有指令時.2.欲創造更有用的AutoCAD 新指令.3.欲簡化繁瑣的環境設定或繪圖步驟時.4.欲處理參數式繪圖時.5.欲做圖面資料讀檔、寫檔.6.欲做AutoCAD 簡報展示時.7.欲達到真正靈活掌控AutoCAD 時.8.欲提昇自己跨上AutoCAD 高手列車時.四.AutoLISP 的效益評估?1. 對公司負責人或設計主管而言:A.也許某員工或幹部花了20個小時撰寫一個AutoLISP程式,表面上,這將近三天的時間,他連一張圖都沒有畫,甚至可能偶有發呆、沈思,若此程式一天可以替公司繪圖部門節省1小時繪圖時間,那算一算,只要20天就抵銷開發成本,而20天以後都是賺的,『用的愈久,省的愈多』!B.若員工皆有此動力,在不影響正常工作,『鼓勵』都來不及,那有『壓抑』的道理,甚至還要派遣優秀人員出去受訓,學習更好的設計技巧與創意呢?!C.千萬不要因為您的不懂或壓抑,SHOW您的權威與POWER,如此,不但對員工造成打擊,甚至您可能成為阻礙了公司電腦化進步的罪魁禍首D.當然,若要撰寫的程式很多,內部設計人員的程式功力距離太遠,達成需求的時間反而變得遙遙無期,那倒不如求助於市面上已有的相關AutoCAD 支援軟體。

一步步学AutoLisp(二)

一步步学AutoLisp(二)

一步步学AutoLisp(二)在第一步中我们是在CAD命令行中进行一些练习,这显然无法满足我们正常的使用要求,所以我们一般将程序写成文件,LISP程序文件的扩展名为“.lsp”。

在AutoCAD2004及以后的CAD中有专门的软件编写程序Visual Lisp,也可以用普通的文本编写软件如记事本进行编写,但文件的扩展名一定要是“.lsp”。

为使大家能对lsp文件的使用有更好的理解,本文一律按使用普通文本编辑器编写的方式进行描述。

打开文本编辑器编写一个文件,文件名为“key.lsp”,将文件保存到C盘根目录下。

键入如下一行程序:(defun c:cm() (command "COPY" pause "" "m"))保存后,在CAD命令行键入:(load"c:/key"),即可将key.lsp调入CAD,返回c:cm。

如下图:在命令行键入“cm”可以执行对一个图元进行多次拷贝的命令,在lisp程序中函数及参数不区分大小写,但参数的返回值有大小之分。

先对程序进行解读:defun 定义函数的函数,后面的c:cm是一个函数的名称。

c:cm 自我定义的函数名称,带“c:”的函数是可以作为操作命令的函数,我们姑且将这类函数称为命令函数。

如果没有“c:”,只有“cm”,则得到的返回值是“cm”,在命令行键入“cm”则不会执行前面的多重拷贝操作。

键入“(cm)”就会执行该操作,我们就称之为一般函数。

() 这个空括弧是用来填写参数的,由于我们的这段程序没有用到任何其他参数,所以括弧内是空的。

command 调用CAD原有命令的函数,这是lsp程序中应用非常多的一个函数,许多操作可以直接调用CAD自己的命令,不许再重新编写。

"copy" 调用的CAD命令名称,名称与前面的command之间有没有空格都可以,而且要用命令全名,不能用简化命令,而且要用引号。

autolisp语言

autolisp语言




(strcat <字符串1> <字符串2>…) 将<字符串1>、< 字符串2>…按顺序连结成一个新字符串,返回该新字 符串。 (substr <字符串> <开始> <长度>) 将<字符串>从< 开始>位置截取长为<长度>值的字符串,返回字符串 。 (strcase <字符串> <模式>)根据<模式>将<字符串>全 部转换成大写或小写,返回转换后的字符串。<模式> 为任意表达式,若省略<模式>或其值为nil,字符串各 字符全部转换成大写,若<模式>值为非nil,字符串各 字符全部转换成小写。 (strlen <字符串>) 求字符号串<字符串>中的字符个数 (包括空格), 返回数值。
补充
取得xyz分量 Getpoint和getcorner函数返回坐标,是一 个有三个实数组成的序列(x y z)。若 要取得其中xyz坐标的分量,可以使用car 、cadr、caddr函数,其语法格式为: (car list) (cadr list) (caddr list)

还可以自组坐标序列


(+ <数> <数>…) 返回所有<数>的和。其中,<数> 可以是整型数,也可以是实型数。 (- <数> <数>…)返回第一个<数>与后面所有数的差。 (* <数> <数>…) 返回所有<数>的乘积。 (/ <数1> <数2> … )返回<数1>除以<数2>后的商。 (1+ <数>) 返回<数>加1后的值。 (注意:1与+号之间不能有空格) (1- <数>) 返回<数>减1后的值。 (注意:1与-号之间不能有空格) (abs <数>) 返回<数>的绝对值。 (sin <角度>) 返回<角度>的正弦值,<角度>单位为弧度

AutoLISP详细讲解

AutoLISP详细讲解

AutoLISP详细讲解关于AutoLISPAutoLISP是由Autodesk公司开发的一种LISP程序语言(LISP是List Processor的缩写)。

第一篇关于LISP的参考文献是由John McCarthy 在1960年4月的《ACM通讯》中发表的。

除了FORTRAN和COBOL,大多数在六十年代早期开发出来的语言都过时了,可是LISP 却生下来,并且已经成为人工智能(AI)的首选程序序言。

AutoLISP解释程序位于AutoCAD 软件包中,然而AutoCAD R2.17及更低版本中并不包含AutoLISP解释程序,这样,只有通过AutoCAD R2.18及更高版本才可以使用AutoLISP语言。

AutoCAD软件包中包含大多数用于产生图形的命令,但仍有某些命令末被提供。

例如,AutoCAD中没有在图形文本对象内绘制矩形及作全局改变的命令。

通过AutoLISP,你可以使用AutoLISP程序语言编制能够在图形文本对象内绘制矩形或作全局选择性改变的程序。

事实上,可以用AutoLISP编制任何程序,或把它嵌入到菜单中,这样定制你的系统会取得更高的效率。

现在,已经有数以百计的第三方软件开发人员使用AutoLISP语言编制各种应用程序软件包,例如,本文作者开发了一个名为SMLayout的软件包,用它可以产生各种复杂几何图形的平面布局图,这些几何图形包括管道的交叉部、过渡都、圆柱、弯管接头、圆锥以及罐顶。

目前社会上非常需要AutoLISP程序员为应用软件及客户菜单的开发提供顾问。

在本章中,我们假定读者已经熟悉了AutoCAD命令及AutoCAD的系统变量。

但是,在开始学习AutoLISP时,却并不需要你是一位AutoCAD或编程专家。

同时,本章还假定读者并无编程方面的知识。

如果你熟悉任何一种编程语言,那么学习AutoLISP就会很容易。

对各种函数的评细探讨以及对例题的逐步讲解会使你学起来很有兴趣。

CAD二次开发(LISP)

CAD二次开发(LISP)




第5行:(defun C: triang1() 本行中,defun为一个AutoLISP函数,它定义了函数TRIANG1。TRIANG1 为该函数的函数名。由于此函数名前带有C:,因此该函数可以像AutoCAD 命令一样被执行。若没有C:, TRIANG1命令只能置于圆括号中执行(TRIANG1)。此函数带有三个全 局变量( P1,P2,P3)。第一次编写AutoLISP程序时,保持变量为全局变量是个好 习惯。这是因为装入并运行程序后,可以通过在AutoCAD命令提示行中输人 感叹号(!)并在其后输入变量名来检查变量的值(Command:!P1)。一 旦程序通过测试并运行正常,就应该使它们成为局部变量(defun c:TRIANG1(/P1 P2 P3) 第6行:(setq P1(getpoint“\n Enter first Point of triangle:")) 本行中,getpoint函数暂停程序的运行,允许用户输入三角形的第一个点。 提示信息Enter first Point of triangle显示在屏幕的提示区内。可以通过键盘输入该点的坐标,也可以用 屏幕光标选择该点。随后setq函数将这些坐标赋予变量P1。\n的作用是回车, 其后的表达式将被打印在下一行上(“n”代表“newline")
说明
1 2 3 4 5 6 7 8 9
10



第1-3行 前三行为注释行,用于描述程序中的函数。这几行很重要因为有它们,编 辑程序会变得简单一些。可以在任何必要的时候使用注释。所有的注释行都 必须以分号(;)开头,当程序装入时这些行会被忽略。 第4行:行为空行,用于分隔程序与注释部分。空行还可以用来分隔程序 的不同模块。这样便于区分程序的不同部分。空行对程序没有影响。再 Nhomakorabea加几个函数

第五章第二节AUTOLISP程序设计简介

第五章第二节AUTOLISP程序设计简介

§5.2 AutoLISP程序设计一、概述LISP语言(List Processing Language的缩写)是一种表处理语言。

因为LISP在描述表方面有独到之处,且本身灵活而精巧,自创立以来,在人工智能的程序设计中得到广泛应用。

在英、美等国应用尤为普遍。

AutoLISP是LISP语言的一个版本,其独特性在于专门为AutoCAD开发的。

所以AutoLISP仅能运行于AutoCAD软件包环境里。

同样,也正是在AutoCAD内置AutoLISP这样一种灵活、精巧的开发语言,使得AutoCAD 得到进一步广泛使用。

1.A utoLISP特点:(1)AutoLISP语言是一种仅能以解释方式运行于AutoCAD内的程序设计语言。

即:脱离AutoCAD环境,它就不能运行。

(2)AutoLISP语言是函数型语言,其函数和数据形式是一致的,即(function argument)·function(函数名):内建函数或用户自定义函数名;·argument(参数):参数种类:①变量(V aribles)②常量(Constants)③其他函数(function)所以表达式可以嵌套.④标志数(flag)⑤可选性参数(optional parameters)因此,表达式的形式是:“先说做什麽,再说对谁做”。

(3)可以在AutoLISP程序中引用AutoCAD的几乎所有功能进行图形处理的自动化,尤其是较深层的应用——对象数据库的操作。

在Visual LISP的协助下,对于AutoCAD进行操作功能上的讨论,LISP仅比ARX少一个功能。

在AutoCAD R14已经不再使用ADS程序设计,取而代之的是ARX程序设计模式。

ARX一般是在AutoCAD和开发商中使用。

使用Visual C++作为基本程序设计语言,其效率、数据处理和软硬件的控制能力都是相当好的。

但是,要想真正发挥这种开发模式的作用,对于程序设计者的要求也较高。

AutoLISP

AutoLISP

AutoLISP语言第一节概述1.1简介AutoLISP是一种嵌入AutoCAD内部的LISP语言。

它可让用户和AUTOCAD 开发者以非常强大的高级语言编写出宏语言程序和函数,它非常适合于图形的应用,LISP很易于学习和使用,它也非常灵活多变。

1.2AUTOLIAP中的数据类型.表.符号.字符串.实型数.整型数.文件指针.AUTOCAD实体名.AUTOCAD选择集.子程序整型数是16位带符号的数,因此,它的范围是在—32768和+32767之间。

实型数是以双精度的浮点数表示。

字符串可以是任意长度,它们的存贮空间是动态分配的。

1.3AUTOLISP的求值程序、词汇约定每一个LISP解释程序的核心就是求值程序。

求值程序装入用户的输入行,对它进行计算,并返回一些结果。

AUTOLISP的输入可以采用好几种形式。

它们可以在运行AUTOCAD时从键盘输入,也可以从ASCII文件读入,或者可以从字符串变量读入。

在所有这些形式中,必须要遵守上定的约定:1.符号名称可以由除下列字符之外的所有可打印字符序列组成:().’”;2.符号和函数名称(子程序)在AUTOLISP中大小写等效。

符号名称不能以数字开头。

3.实型数由一个或多个数字组成,后面跟着小数点,再就是一个或多个数字;如:“.4”并不被认作为实型数,“0.4”才是正确的写法。

4.文字字符串是一个由双引号引起来的字符序列。

在引起来的字符串中,可以使用反斜号,使得其中包括的控制字符可被正确识别,规定:\\ 表示字符“\”\n 表示换行\e 表示ESC\r 表示回车\t 表示光标\nnn 表示其八进制码为nnn的字符第二节AUTOLISP函数AUTOLISP提供了大量的预定义函数,本节介绍一些主要的函数。

需要说明的是,逻辑常数T与NIL这两个值相当于逻辑上的真与假。

是两个特殊原子。

这两个原子的值预先设置为T和NIL;常数PI表示数学上的π,它不是一个函数。

2.1数值运算函数1.(+ 〈数〉〈数〉…)函数返回所有数的总和2.(—〈数〉〈数〉…)函数返回所有数的差3.(* 〈数〉〈数〉…)函数返回所有数的积4.(/ 〈数〉〈数〉…)函数返回所有数的商其中的〈数〉可以是整型的,也可以是实型的。

每天一个命令学习AutoLisp-3

每天一个命令学习AutoLisp-3

第三天:princ
princ是一个显示或书写函数,可以将文本显示在显示器或写入文本文件中。

一、语法:
(princ “字串1”)
二、解释:
显示字串“字串1”
三、举例及练习:
1、在命令行输入:(princ “你好!”)↙,在命令行会显示不带引号的你好! 和带引号的“你好!”
第一个你好是正常显示的文本,带引号的是该语句的返回值。

在命令行中如下输入:
会如下显示:
返回值不在显示。

因此(princ)可以用来消除返回值的显示。

2、在命令行如下图输入:
显示如下:
“小明,你好!”在同一行显示。

继续在命令行如下图输入:
在上一字串中加入一个“\n”符号,显示如下:
在加入“\n”处换行显示。

princ语句可以将字串写入文本文件中,由于目前已较少使用,本文不在讲述,感兴趣的朋友可以自己查看相关书籍。

3、综合练习:
按下图编写程序文件“lisp-3.lsp”。

加载程序文件“lisp-3.lsp”,在命令行输入名利“lx”,按提示进行可在CAD中写入“我的第一个综合练习”,在命令行显示“我完成了我的第一个综合练习!”。

AutoLISP(1)概述、基本函数、表处理函数、绘图函数

AutoLISP(1)概述、基本函数、表处理函数、绘图函数

石家庄铁道学院工业设计系
计 算 机 绘 图
LISP语言的突出特点是程序和数据都取符号表达 式的形式,即一个LISP程序可以把另一个LISP程 序作为它的数据处理。 LISP是求值型而不是编译型或解 释型的语言。
石家庄铁道学院工业设计系
计 算 机 绘 图
Auto LISP语言的特点 语言的特点
AutoLISP是为扩展和自定义AutoCAD功能而设计 的一种编程语言。 八十年代中期,AutoLISP被引入AutoCAD R2.16 版中作为应用程序编程接口(API) ,至今仍然是其 主要的程序设计语言。 LISP之所以被选为AutoCAD最初的应用程序编程 接口,是因为只有它才适合于工程中的非结构化 设计过程。
石家庄铁道学院工业设计系
计 算 机 绘 图
例: (moo “Hello” 5) (moo “Hi” 1 2 3) (moo 1 2 3) (moo “Hello”) 正确 正确 不正确 不正确
石家庄铁道学院工业设计系
计 算 机 绘 图
二、函数 函数是AutoLISP中的基本数据,函数能对数据进 行一系列的处理,并返回其结果。 AutoLISP函数的规则: AutoLISP函数必须放在括号里,所有的括号应当 匹配 函数从左往右读 括号中的第一个原子为函数操作符,为一个命令, 告 诉 AutoLISP做什么。
石家庄铁道学院工业设计系
计 算 机 绘 图
六、点对
点对也是一种表,表中有两个元素,两个元素中间 有圆点“.”,圆点与前后元素之间必须各有一个空 格,例如 (A . B) 就是一个点对,A和B与圆点之间用空格分开,A 和B均为S表达式,A称为点对的左元素,B称为点 对的右元素。点对也可以嵌套。 点对常用于构造联结表。

AutoLISP简介

AutoLISP简介

AutoLISP简介AutoLISP规定了函数的形式:一: ( function argument )1.( ) 括号,表示执行某一函数,而括号中的内容即所要执行的部分.2.function 表示函数名. AutoLISP就是根据菡数名来区分各基本函数和用户自定义的函授数的.3.argument表示函数的参4.如果函数中套有函数称为嵌套函授数. AutoLISP允许用户使用诸如下列嵌套函授数:( fun1 (fun2 argu2) (fun3 argu3))(1)括号“(” 和“)”要匹配使用,用户在编写AutoLISP程序时一定要注意左\右手枪号匹配问题.(2)AutoLISP程序中,所有的括号( )和双引号" " 都必须在英文状态下输入,即必须是半角符号,为AutoLISP不识加紧中文全角符号.二: 设置变量函数( setq或SETQ )格式:(setq 变量名1值1[变量名2值2变量名3值3···])功能:创建给定的变量,并赋特定值.说明:(1)setq函数允许用户同时设置多个变时并赋予相应的数值.(2)对于字符串类型的值,应加上“”以于区分.注意:各变量名\数值之间只用空格隔开,而不能用其它标点符号,如要把3赋给变量abc可采用setq abc 3)方式.三: 执行AutoCAD标准命令( command )格式: ( command" 标准命令" "具体参数1" "具体参数2" ······)例如: (1)如果要画从(5,3)到(7,8)再到@10<0 三点的联机,可采用:( command " Line" "5,3" "7,8" "@10<0" "")(2)如果用户从已经定义的P1点到P2点画一条直线,可采用:( command "Line" P1 P2 "")四: 选择定点( getpoint)格式: getpoint("\n操作提示:")功能:用户可通过键盘输入体的坐标参数,可以用十字光标在屏幕区域内选取一点,通过该函数, AutoLISP就得知了用户所选取的点的坐标值.说明:(1)A utoLISP将首先显示用户设置的操作提示,在此提示下,才可确定某一给定一点.(2)G etpoint的操作提示中\n表示换行.通常,我们都是用(setq P1(getpoint"\n请输入第一点的坐标: "))这和方式来选取给定的点,并把该点坐标赋给变量P1.五: 目标捕捉( osnap)格式; osnap 给定顶点名称“目标捕捉方式”功能:以某种特定的目标捕捉方式, 捕捉最近给定顶点的某个特殊点.语名( setq Pt2(osnap pt1 "midp"))表示捕捉靠近Pt1端的中点,并把该中点坐标赋给Pt2六: 提取实体名称( entlast)格式: entlast功能:将用户的操作的上一实体的名称提取出来.( setq m (entlast))表示把用户的操作的上一实体的名称提取出来.并赋于m 这样AutoCAD就可以通过变量m来识别图形实体.例如:(1) Command :(command "circle" "5,5" "2") 以(5,5)这点为圆心,2为半径画一个圆.(2) Command :(command"line" "3,5" "7,5" "") 以这2点画一条直线,然后结束命令(3)Command :(setq el (entlast))(4)Command :(setq pt "5,7") 将点(5,7)赋给变量pt(5)Command :(command "trim" el "" pt "") 剪切多余的线.通过entlast 函数得知用户操作的上一实体为直线,并把该直线的实体名赋给变量el 这样el 就代表该直线.用户自定义函数AutoLISP提拱defun函数用以自定义用户函数,操作格式如下:( defun c :XXX( )表达式)现就该格式作说明:(1):defun 函数后面所跟C :XXX( )是一种特定的格式,XXX是用户定义函数的函数名.(2):表达工可由AutoLISP基本函数变量\字符串和运算符等组成,是用户定义函数的核心部.(3):定义完函数后,用户就可像AutoLISP基本函数一样调用XXX( )函数.注意:(1):defun 函数后所跟的C并不是代表硬盘驱动器符C,而是代表command line fuuction (命令行函数).(2):用这种方式所定义的函数XXX( ) 是无参函数,即不允许携带参数.(3):定义后,该函数XXX( ),还可以像AutoCAD基本命令一样,在command: 提示符下输入XXX并回车激活运行.(4):XXX( )函数, 还可以像AutoCAD透明命令一样,在某一函数运行过程中XXX形式运行.例如:( defun C : LXH( )(setq P1( getpoint"\ n请确定零件标注线第一点: ")(setq P2( getpoint"\ n请确定零件标注线第二点: "))( command "Line" P1P2 "@5<0" "")(setp P3 ( osnap P2 "midp" ))(command "dtext" " J " " bc" P350 )( Princ ))。

AutoLisp 简介

AutoLisp 简介

AutoLisp 简介●本简介仅列出较常用之基本观念。

详细且完整之功能,请自行参阅当时最新版本之AutoLisp,或/~rogh/autolisp/。

●AutoLisp 乃是依Lisp程序语言为基础,加以扩充,使之可呼叫AutoCAD绘图功能。

●Lisp = List Programming●List (串行):一种数据结构表示法:(1 2 3 ( A B ) 5 6 )atom :最基本之构成原子。

如:1, 2, 3, A,B,5,6element:构成list的元素,可以是atom(如:1,2,3,5,6)或者子串行(sub-list, 如:(A B) )●Lisp的特性将list视为函式(function),其中,第一个元素为运算子(operator),余为操作数(operand)。

例如:一般数学式 3 + 2,Lisp式为(+ 3 2);f(x,y)的Lisp式为(f x y)。

数据(data)为一种特殊的函式,其运算子为quote。

例如:资料(a,b,c)的Lisp式为(quote a b c) 或简示为‟(a b c)函式内部指述(statement),依序(sequential)执行。

函式之间无必然前后之执行关系(non-procedural)。

不分大小写,系统一律响应以大写。

●数据型态1.integer2.real3.●常数1.T :true2.Nil :false●;批注符号,置于行首。

该行不执行。

●(Auto)Lisp 为交谈式(interactive)的操作环境,使用interpreter (而非compiler)。

可以在屏幕上交谈式执行,或写成程序,以批次式执行(详后)。

●常用指令集(完整指令集,请自行参考AutoLisp相关手册)数学运算指令串行运算数据型态转换控制指令函式定义指令例:●以文字处理软件,撰写下列程序,并以「纯文字」模式,在D:\ 下,存成AAA.LSP 檔。

AutoLISP绘图程序设计

AutoLISP绘图程序设计

2021/5/8
h
4
.AutoLISP的数据类型
(1)整型数(INT):是由0、1、2…9、+、-组成的。
(2)实型数(REAL):如0.4(0不能少)、-1.23、 0.526E9(0.526×109)。
(3)符号(SYM):除(、)、*、‘、”、;之外的字符 序列,并且不能全部是数字。
符号常用着变量,如:
;;在屏幕上显示 ASCII码为(65-90)的字符
(defun C:zm(/ as)
;自定义命令
(setq as 65 n 100)
(while (<= s 90)
(command "text" (list n 100) 15 "" (chr as))
(setq as (+ as 1) n (+ n 20))
所谓二次开发:是指以AutoCAD软件为平台,加入自己所需要的功能。开发过程,就是编程的 过程。 二次开发所支持的语言有VB、C++,大型的二次开发,以C++为主,而小型二次开发,一般 以AutoLISP为主。
2021/5/8
h
2
(2)必须在AutoCAD环境下运行(内嵌); (3)AutoLISP可以编写程序,调用AutoCAD的许多
参考答案2:
(setq a (getreal"输入后视读数a:")) (setq b (getreal"输入前视读数b:")) (setq h (- a b))
2021/5/8
h
24
参考答案3:
(setq n (getint "输入高差个数:")) (setq fh 0.0) (repeat n

第二章AutoLISP概述

第二章AutoLISP概述

0.1 表示为
• •
.1 错误 0.1 正确
1. 正确 .1 错误
2.1.3 字符串 字符串是在双引号中的一组字符。在用引号引起来的字符串中,用反斜杠 (\) 字符可以添加控制字符(或换码代码)。当用户在 AutoLISP 表达式中直接 使用用引号引起来的字符串时,该值被称为文字字符串或字符串常量。 “string 1”和“\nEnter first point:”都是有效的字符串。
• PAUSE 定义为由一个双反斜杠 (\\) 字符构成的字符串“\\”。此变 量与 command 函数配合使用,用于暂停正在执行的命令,等候用户 输入。 • PI 定义为常量 (pi)。其值近似等于 3.14159。 • T 定义为常量 T。用作非 Nil 值。
• 要想指定 AutoLISP 如何响应修改保护符号的尝试,请从 Visual LISP 菜单中选择“工具” “环境选项” “基本选项”。 • 2.15 原子 • 原子是指不可再分的元素。例如平面内一点的坐标可以分为两个元素, 即x坐标值,y坐标值,而x、y不可再分,所以称为原子。符号和常数 统称为原子,而原子和表统称为表达式。 • T和nil是两个特殊原子。 • 下面一些字符将终止一个原子或分隔多个原子。 • ( (开括号) 表的定界符 • ) (闭括号) 表的定界符 • ' (单引号) quote函数缩写 • " (双引号) 字符串定界符 • ; (分号) 注释符号 • <space> 空格 数据分隔符 • 例如 (SETQ A "ABC”)与(SETQ A"ABC")等价
• • • • • • • • • • •
对两个有效整数进行算术运算,但造成了整数溢出,产生无效结果: _$ (+ 2147483646 3) -2147483647 此样例得出的结果显然是无效的,因为两个正数相加得出了负数。但 请注意下列运算如何产生有效的结果: _$ (+ 2147483648 2) 2.14748e+009 在这个例子中,AutoLISP 先将 2147483648 转换为一个有效的实数, 再对其作加法运算。得出的结果是一个有效的实数。 最大的负整数值保留其值: 有问题: -2147483648为最小负数 最大的负整数值保留其值: 有问题: _$ -2147483647 -2147483647 如果输入一个大于可允许的最大负整数值的负整数,AutoLISP 将其 如果输入一个大于可允许的最大负整数值的负整数,

CAD课件 第14章 AutoLISP语言初步

CAD课件 第14章 AutoLISP语言初步

10. (exp 数值)返回:数值的指数 10. 11. (log 数值)返回:数值的自然对数值 11. 12. (max 数值 数值…)返回:数值中的最大值 12. 数值… 13. (min 数值 数值…)返回:数值中的最小值 13. 数值… 14. pi 常数∏,其值约为3.1415926 14. 常数∏,其值约为3.1415926 15. (sin 角度)返回:角度的正弦值,角度值为弧 15. 度 16. (sqrt 数值)返回:数值的平方根 16.
示例2 示例2: (if (> yl 0.0) ;绘制封头与槽本体间的预留值 (progn (command "line" p1 py1 "") (command "line" p2 py2 "") (command "line" p3 py3 "") (command "line" p4 py4 "") ) )
14.3 AutoLISP 函数
14.3.1 数学运算功能函数 1. (十 数值 数值…)返回:累计实数或整数数值 数值… 2.(一 数值 数值…)返回:差值 2.(一 数值… 3.(* 数值 数值…)返回:所有数值乘积 3.( 数值… 4.(/ 数值 数值…)返回:第一个数值除以第二个以 4.( 数值… 后数值的商 5.(1+ 数值)返回:数值+1 5.( 数值)返回:数值+1 6.(1- 数值)返回:数值-1 6.( 数值)返回:数值7.(abs 数值)返回:数值的绝对值 7.( 8.(atan 数值)返回:反正切值 8.( 9.(cos 角度)返回:角度的余弦值,角度值为弧度 9.(
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

AutoLISP详细讲解关于AutoLISPAutoLISP是由Autodesk公司开发的一种LISP程序语言(LISP是List Processor 的缩写)。

第一篇关于LISP的参考文献是由John McCarthy 在1960年4月的《ACM 通讯》中发表的。

除了FORTRAN和COBOL,大多数在六十年代早期开发出来的语言都过时了,可是LISP却生下来,并且已经成为人工智能(AI)的首选程序序言。

AutoLISP解释程序位于AutoCAD软件包中,然而AutoCAD R2.17及更低版本中并不包含AutoLISP 解释程序,这样,只有通过AutoCAD R2.18及更高版本才可以使用AutoLISP语言。

AutoCAD软件包中包含大多数用于产生图形的命令,但仍有某些命令末被提供。

例如,AutoCAD中没有在图形文本对象内绘制矩形及作全局改变的命令。

通过AutoLISP,你可以使用AutoLISP程序语言编制能够在图形文本对象内绘制矩形或作全局选择性改变的程序。

事实上,可以用AutoLISP编制任何程序,或把它嵌入到菜单中,这样定制你的系统会取得更高的效率。

现在,已经有数以百计的第三方软件开发人员使用AutoLISP语言编制各种应用程序软件包,例如,本文作者开发了一个名为SMLayout的软件包,用它可以产生各种复杂几何图形的平面布局图,这些几何图形包括管道的交叉部、过渡都、圆柱、弯管接头、圆锥以及罐顶。

目前社会上非常需要AutoLISP程序员为应用软件及客户菜单的开发提供顾问。

在本章中,我们假定读者已经熟悉了AutoCAD命令及AutoCAD的系统变量。

但是,在开始学习AutoLISP时,却并不需要你是一位AutoCAD或编程专家。

同时,本章还假定读者并无编程方面的知识。

如果你熟悉任何一种编程语言,那么学习AutoLISP就会很容易。

对各种函数的评细探讨以及对例题的逐步讲解会使你学起来很有兴趣。

本章讨论常用的AutoLISP函数以及它们S程序编制中的应用。

对于本章中未涉及的函数,请参阅Autodesk公司的《AutoLISP程序员参考手册》。

AutoLISP对硬件没有任何特殊要求。

如果系统能够运行AutoCAD,那么同样也可以运行AutoLISP。

AutoLISP程序可以使用任何文本编辑器进行编制。

书签收藏:Yahoo!收藏| 百度搜藏| 新浪ViVi | QQ书签| ++++++ 会员功能:引用报告回复论坛操作帮助| 常用的工具软件下载| 获取社区币的方法| 新手必看帖| 什么是灌水? | 会员积分等级说明| 免责声明| 隐私声明| 更多帮助…cad超级版主UID 2精华5积分5896帖子5697好评度46社区币9776推广分90阅读权限110 注册2005-4-27 状态离线2楼大中小发表于2006-4-16 18:23 资料个人空间短消息加为好友数学运算任何编程语言都提供数学函数。

在AutoLISP中,同样提供了编程以及数学计算所需的大部分数学函数,你可以使用AutoLISP对数字进行加、减、乘、除运算,还可以得到以弧度表示的角度的正弦值、余弦值及反正切值等。

使用AutoLISP还可以进行许多其他计算。

这一节主要讨论AutoLISP程序语言支持的常用数学函数。

1.加法格式(+ num1 num2 num3…)此函数(+)计算加号(+)右边所有数字的和(+ num1 num2 num3…)。

这些数字可以是整数或实数。

如果均为整数,则和为整数;如果均为实数,则和为实数。

但是如果既有整数又有实数,则和为实数。

如下所示,在前两个例子中,所有数字均为整数,所以结果是整数。

在第三个例子中,一个是实数(50.0),故结果为实数。

示例:Command:(+2 5)返回7Command:(+2 30 4 50)返回86Command:(+2 30 4 50.0)返回86.02. 减法格式(- num1 num2 num3…)此函数(-)从第一个数中减去第二个数(num1-num2)。

如果多于两个数,就用第一个数字减去其后所有数字的和[num1-(num2+num3…)]。

在下面的第一个例子中,28减去14后返回14。

因为两个数均为整数,结果亦为整数。

在第三个例子中20与10.0相加,并用50减去两数的和(30.0),返回一个实数20.0。

示例:Command:(- 28 14) 返回14Command:(- 25 7 11)返回7Command:(-50 20 10.0)返回20.0Command:(-20 30)返回河0Command:(-20.0 30.0)返回-10.03.乘法格式(* num1 num2 num3…)此函数(*)计算乘号右边所有数字的乘积( num1×num2×num3…)。

若均为整数,它们的乘积亦为整数;若其中含有一个实数,乘积即为实数。

示例:Command:(* 2 5) 返回10Command:(* 2 5 3) 返回30Command:(* 25 3 2.0) 返回60.0Command: (* 2 -5.5) 返回-11.0Command: (* 2.0 -5.5 -2) 返回22.04.除法格式(/ num1 num2 num3…)此函数(/)用第一个数除以第二个数。

如果多于两个数,就用第一个数除以其后所有数的乘积[num1/(num2 × num3 ×…)]。

在下面的第四个例子中,用200除以5.0与4的乘积[200/(5.0×4)]。

示例:Command:(/ 30)返回30Command:(/ 3 2)返回1Command:(/3.0 2) 返回1.5Command:(/ 200.0 5.0 4)返回10.0Command:(/ 200 -5)返回-40Command:(/ -200 -5.0)返回40.0会员功能:引用报告回复论坛操作帮助| 常用的工具软件下载| 获取社区币的方法| 新手必看帖| 什么是灌水? | 会员积分等级说明| 免责声明| 隐私声明| 更多帮助…超级版主UID 2精华5积分5896帖子5697好评度46社区币9776推广分90阅读权限110 注册2005-4-27 状态离线大中小发表于2006-4-16 18:24 资料个人空间短消息加为好友增量、减量与绝对数字1.增量数字格式(1+ number)此函数(l+)使数字与1(整数)相加,返回一个增加1的数。

在下面的第二个例子中,1与-10.5相加返回-9.5。

示例:(1+ 20)返回21(1+ -10.5)返回-9.52.减量数字格式(1- number)此函数(1-)从数字中减去1(整数),并返回一个减去1的数。

在下面的第二个例子中-10.5减去1返回-11.5。

示例:(1- 10)返回9(1- 10.5)返回-11.53.绝对数字格式(abs num)abs函数返回一个数的绝对值。

该数可以是整数或者实数。

在下面的第二个例子中,由于-20的绝对值为20,故函数返回20。

(abs 20)返回20(abs -20)返回20(abs -20.5)返回20.5会员功能:引用报告回复论坛操作帮助| 常用的工具软件下载| 获取社区币的方法| 新手必看帖| 什么是灌水? | 会员积分等级说明| 免责声明| 隐私声明| 更多帮助…超级版主UID 2精华5积分5896帖子5697好评度46社区币9776推广分90阅读权限110 注册2005-4-27 状态离线大中小发表于2006-4-16 18:25 资料个人空间短消息加为好友三角函数1.sin函数格式( sin angle)sin函数计算一个角(以弧度表示)的正弦值。

在下面的第二个例子中,sin函数计算Pi(180度)的正弦值并返回0。

示例:Command:(sin 0)返回0.0Command:(sin Pi)返回0.0Command:(sin 1.0472)返回0.8660272.cos函数格式(cos angle)cos函数计算一个角(以弧度表示)的余弦值。

在下面的第三个例子中,cos函数计算Pi(180度)的余弦值并返回-1.0。

示例:Command:(cos 0)返回l.0Command:(cos 0.0)返回1.0Command:(cos Pi)返回-1.0Command:(cos 1.0)返回0.5403023.atan函数格式( atan num1)atan函数计算数的反正切值,返回角度以弧度表示。

下面的第二个atan函数计算1.0的反正切值并返回0.785398(弧度)。

示例:Command:(atan 0.5)返回0.463648Command:(atan 1.0)返回0.785398Command:(atan -1.0)返回-0.7853984.具有两个参数的atan函数格式( atan num1 num2)还可以在atan函数中再指定一个数。

若指定了第二个数,函数将以弧度形式返回(num1/num2)的反正切值。

在下面的第一个例子中,第一个数(0.5)除以第二个数(1.0),atan函数计算商(0.5/1=0.5)的反正切值。

示例:Command:(atan 0.5 1.0)返回0.463648弧度Command:(atan 20 3.0)返回0.588003弧度Command:(atan 2.0 -3.0)返回2.55359弧度Command:(atan -2.0 3.00)返回-0.5880033弧度Command:(atan -2.0 -3.0)返回-2.55359弧度Command:(atan 1.0 0.0)返回1.5708弧度Command:(atan -0.5 0.0)返回-1.5708弧度5.angtos函数格式(angtos angle[made[precision]])angtos函数以字符串格式返回以弧度表示的角度值。

字符串格式由made和precision的设置决定。

示例:Command:(angtos 0.588003 0 4)返回“33.6901”Command:(angtos 2.55359 0 4)返回“145.3099”Command:(angtos 1.5708 0 4)返回“90.0000”Command:(angtos -1.5708 0 2)返回“270.00”注意在(angtos angle[mode[precision]])中:angle是以弧度表示的角度值。

mode是与AutoCAD系统变量AUNITS相对应的angtos模式。

AutoCAD中可用模式如下:ANGTOS模式编辑格式0 十进制角度1 度/分/秒2 梯度3 弧度4 测量单位precision是一个整数,用于控制小数的位数,与AutoCAD系统变量AUPREC相对应。

相关文档
最新文档