CAD的开发一般离不开以下几种方法。LISP,vba,c++&arx,c#、vb#&arx.net开发,各语言有各自的优势和劣势,如:
lisp:开发环境简单,即写即用,但效率底,语言与其他常用语言不一样,前期掌握需要一段时间
vba:方便初学者学习,效率执行高于lisp,低于arx和arx.net,也是系统自带编辑器,方便即写即用
c++&arx:需要掌握c++语言知识和arx知识,所有开发环境中,执行效率最高。但编译环境比较麻烦,不适合个人开发,适合中小型企业开发
c#、vb#&arx.net:既兼顾vba的简单易学特点,又兼顾c++&arx的效率。编译环境也简单。不过只能在cad2006以上才支持。
LISP历史:除了FORTRAN和COBOL,大多数在六十年代早期开发出来的语言都过时了,可是LISP却生存下来,并且已经成为人工智能(AI)的首选程序序言。AutoLISP解释程序位于AutoCAD软件包中,然而AutoCAD R2.17及更低版本中并不包含AutoLISP解释程序,这样,只有通过AutoCAD R2.18及更高版本才可以使用AutoLISP语言
AutoCAD软件包中包含大多数用于产生图形的命令,但仍有某些命令未被提供。例如,AutoCAD中没有在图形文本对象内绘制矩形及作全局改变的命令。通过AutoLISP,你可以使用AutoLISP程序语言编制能够在图形文本对象内绘制矩形或作全局选择性改变的程序。事实上,可以用AutoLISP编制任何程序,或把它嵌入到菜单中,这样定制你的系统会取得更高的效率。
下面我们来演示一下如果用lisp绘制cos三角函数:
(defun c:drawcos()
(setq x -6)
(setvar "cmdecho" 0)
(command "pline")
(while (< x 6)
(setq y (cos x))
(command (list x y))
(setq x (+ 0.005 x))
)
(command "")
(setvar "cmdecho" 1)
)
点击加载所有,然后再cad命令行输入drawcos
效果如下:
更多知识,请去爱lisp论坛学习