(defun c:zfx(/ A ANG p1 p2 p3 p4 p5 os cmd)
(SETQ CMD (GETVAR "cmdecho"))
(SETVAR "cmdecho" 0)
(setq os (getvar "osmode"))
(setq A (getreal"\n:输入边长"))
(setq ANG (getreal"\n:输入角度"))
(setq p1 (getpoint"\n:指定起点"))
(setvar "osmode" 0)
(setq p2 (polar p1 ( pi (/ ANG 180)) A))
(setq p3 (polar p2 ( pi (+ 05 (/ ANG 180))) A))
(setq p4 (polar p1 ( pi (+ 05 (/ ANG 180))) A))
(command "pline" p1 p2 p3 p4 "c")
(SETQ p5 (polar p1 (+ ( pi (/ ANG 180)) ( 025 pi)) ( A (sin (/ pi 4)))))
(command "circle" p5 ( 05 A))
(setvar "osmode" os)
(SETVAR "cmdecho" CMD)
(PRINC)
)
(defun c:drl ( / cm os p1 p2 l a )
(setq cm (getvar "cmdehco"))
(setq os (getvar "osmode"))
(setq p1 (getpoint "\n请选择基点:"))
(setvar "cmdecho" 0)
(setvar "osmode" 0)
(setq l (getdist p1 "\n请输入长度: "))
(setq a (getangle p1 "\n请输入角度: "))
(setq p2 (polar p1 a l))
(command "_Line" p1 p2 "" "_Circle" p1 (/ l 40) "_Circle" p2 (/ l 40))
(command "_Circle" (polar p1 a (/ l 20)) (/ l 40))
(command "_Osmode" os "_Cmdecho" cm)
(princ)
)
(defun C:wjx()
(setq p0 (getpoint "\n选择中心点"))
(setq p1 (polar p0 (/ ( 18 pi) 180) 323606798 ))
(setq p2 (polar p0 (/ ( 90 pi) 180) 323606798 ))
(setq p3 (polar p0 (/ ( 162 pi) 180) 323606798 ))
(setq p4 (polar p0 (/ ( 234 pi) 180) 323606798 ))
(setq p5 (polar p0 (/ ( 306 pi) 180) 323606798 ))
(command "line" p1 p3 p5 p2 p4 "c" "")
(command "circle" p0 100))
可以使用AutoLISP,AutoLISP是由Autodesk公司开发的一种LISP程序语言,LISP是List
Processor的缩写。通过autolisp编程,可以节省工程师很多时间。AutoLISP语言作为嵌入在AutoCAD内部的具有智能特点的编程语言,是开发应用AutoCAD不可缺少的工具。
AutoCAD软件包中包含大多数用于产生图形的命令,但仍有某些命令未被提供。例如,AutoCAD中没有在图形文本对象内绘制矩形及作全局改变的命令。通过AutoLISP,可以使用AutoLISP程序语言编制能够在图形文本对象内绘制矩形或作全局选择性改变的程序。事实上,可以用AutoLISP编制任何程序,或把它嵌入到菜单中,这样定制系统会取得更高的效率。
以上就是关于编写一个AutoLISP程序,画出一个边长为A的正方形,以及该正方形的内切圆,正方形的底边与正X轴的夹角为ANG全部的内容,包括:编写一个AutoLISP程序,画出一个边长为A的正方形,以及该正方形的内切圆,正方形的底边与正X轴的夹角为ANG、编写一个AutoLISP程序,从p1到p2点画一条直线。直线p1p2与正x轴夹角为A,p1点与p2点间的距离L,在p1 p2及、用Autolisp编写程序,作一外切圆半径为100的五角星。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)