使用CAD的工程师知道,在复杂CAD问题或特殊用途的设计中,使用原有软件的功能往往难以解决问题,或者说需要花费很多的精力和时间才能完成需要的内容。在这种情况下,如果利用CAD的API函数,根据客户的特殊用途进行软件的个性化定制和二次开发,可以大大提高绘图的效率,深度满足企业的要求。
在众多CAD软件中,中望CAD+就是一款能够高效便捷为企业提供专业定制解决方案的平台软件。这要归功于中望CAD+丰富而独有的的开发工具:LISP,VBA,ZRX和.NET等。其中,LISP和VBA开发相对比较简单,但相较ZRX,功能上会有所不足。ZRX开发基于VC平台,使用C++语言进行,能很好的运用面向对象技术,功能强大,但对开发者能力要求较高,开发速度慢。
对于LISP,中望CAD+提供的函数数量达到AutoCAD的95%以上。相对于以前的中望CAD,主要支持更多的种反应器以及永久反应器, 还增加了工程配置和与ZRX交互的函数。同时在运行速度上,也有大幅度的提高,运行下面的例子:
(defun test ()
(setq a 1
b 1
c 1
i 0
)
(while (< i 1000000)
(setq a (+ a 1)
b (+ b 1)
c (+ c 1)
i (+ i 1)
)
)
)
(defun gt () (* 86400 (getvar "tdusrtimer")))
(defun tt ()
(setq t1 (gt))
(test)
(princ "\ntime:")
(princ (- (gt) t1))
)
(tt)
该程序多次重复进行了一些简单的运算后记录下运行的时间,结果如下:
从上面的结果可以看出, 中望CAD+相对于以前的中望CAD在运算效率方面的优势非常明显,且接近AutoCAD的水平。
VBA方面是中望CAD+改动相对较小的,主要对原有问题进行了修复,使用起来会比中望CAD舒服很多。而对于ZRX开发的程序,最先感受到的优点是它的兼容性,基本上ARX中常用的功能都可以很顺利地移植过来,甚至比VBA还要简单。在具体的应用方面,中望软件也用ZRX开发了机械版、建筑版等较大的专业应用程序,CASS、理正等原来在AutoCAD的外挂程序也进行了顺利的移植。而当使用一段时间后就会感受到它带来的效率的提高,无论是刷新机制的改善和内存使用的优化都让开发者实实在在地体验到。
从中望CAD+2014版开始对.NET进行支持,开发人员可在.NET框架下使用任何支持.NET的语言,如VB.NET、C# 和Managed C++等对中望CAD+进行二次开发。.NET同时结合了VC++功能强大和VBA或Lisp易学易用的特点,可以快速开发出功能强大的应用,是完全面向对象的开发方式。.NET采用了垃圾回收机制,由.NET框架自行判断内存回收的时机并实行回收,从而解决了令C++程序员头痛的内存泄漏问题。同时,.NET封装了更好的类和控件,可以快速创建友好的界面。中望CAD+对.NET的支持,对广大开发者来说是非常有价值的。
总结:CAD软件的二次开发功能是CAD的重要部分,好的API接口使得CAD功能扩展领域更广,实现用户特殊的需求。中望CAD+的接口较为成熟,用户可以将自己原有的二次开发程序移植到中望CAD+上来使用,也可以直接在中望上开发,相信会达到预期效果。