选择特殊符号
选择搜索类型
请输入搜索
第1章 AutoCAD 2000的新特性
1.1 AutoCAD 2000的新特性
1.1.1 Heads-Up Designr工作环境
1.1.2 访问和使用特性的提高
1.1.3 资源扩展
2100433B
本书分为四个部分,从浅入深地介绍了AutoCAD 2000的命令和常用的三种开发途径。第一部分讲解了AutoCAD 2000以对从基础到高级的操作;第二部分讲解了AutoLISP语言的基本函数和开发过程:第三部分讲解了ADSRX的基本函数和开发过程;第四部分讲解了OBJECTARX的基本函数和开发过程,可以作为高等院校的教材使用。 本书的第一部分适合于AutoCAD的入门用户,第二部分面向已
Dim BlockNameSt As StringSub DimDimaligned()On Error GoTo ErrDim Po(0 To 2) As DoubleDim Pr(0 To 2) ...
《便衣警察》 《死于青春》 《一场风花雪月的事》 《海岩文集》 《永不瞑目》 《海岩散文》 《玉观音》 《海岩中篇选》 《你的生命如此多情》 《海岩长篇经典全集》 《拿什么拯救你,我的爱人》 《煽》 ...
探析Auto CAD的二次开发技术及相关应用
AutoCAD是一款通用性计很强算机辅助设计软件,它的体系结构开放,可以根据,不同行业和专业进行二次开发功能。现在,CAD已在电子和电气、科学研究、机械设计、土木建筑、地质、计算机艺术等各个领域得到广泛应用。
Auto CAD VBA二次开发在征地工作中的应用研究
本文着重介绍基于AutocAD平台,利用其内嵌的VBA开发工具,进行二次开发,对征地内业进行自动成图、处理,以提高征地内业工作效率。
书 名: CAD二次开发技术及其工程应用
作 者:王玉琨
出版社: 清华大学出版社
出版时间: 2008
ISBN: 9787302167990
开本: 16
定价: 31.00 元
本书适用丁已掌握AutoCAD的基本操作,需深入了解AutoCAD以及对AutoCAD进行二次开发的工程技术人员,可作为大专院校校程类各类业的教材或教学参考书,也适宜作为广大工程制图技术员和工程师学习的教材及软件培训班的培训教材。
从AutoCAD 2.18开始推出AutoLISP开始到现在,我们所能使用的开发工具主要有:AutoLISP、VisualLISP、VBA、COM外部接口、ObjectARX、ObjectARX.NET等开发方式供用户选择。下面开始对上述开发方式进行简要介绍:
AutoLISP是进行对AutoCAD二次开发最早的API,它是人工智能语言LISP的一个分支.主要用来自动完成重复性任务,进行客户化开发和编制AutoCAD菜单以及通过简单机制为AutoCAD扩充命令,能够有机的和AutoCAD结合在一起,它语法简单容易上手,到仍有很多的活跃开发用户。但是由于它是解释型API而不是面向对象的编程语言,使它的效率低下,由于执行的是源代码文件所以导致保密性能不高很难用它开发大型的应用程序。
在AutoCAD R14.01中,Autodesk公司首次提供了一种新的LISP编程工具:Visual LISP,它是一种面向对象的开发环境,是AutoLISP的扩展和延伸。
在AutoCAD2000中,Visual LISP被集成到了AutoCAD环境之中。Visual LISP是一种半编译的API。由于可以被编译所以大大提高了运行效率和安全性。同时它又与AutoLISP完全兼容,又提供了AutoLISP的所有功能,同时它又能够访问AutoCAD的多文档环境,以及对COM/ActiveX技术的支持和反应器等。VisualLISP
IDE同时提供了完整的编辑环境使得用户可以对代码进行调试跟踪、源码语法检查、括号匹配、函数提示等工具,方便创建和调试LISP程序。由于VLISP集成于AutoCAD内部,而且随AutoCAD升级而升级所以兼容性比较好,这也是LISP深受广大编程爱好者使用的原因。
但在进行大数据的计算处理方面,Visual LISP不能很好的胜任这项任务,这使得开发大型数据运算的程序仍有一定困难。
ADS(AutoCAD Development System)是Autodesk公司最早在AutoCAD R11中提供的C语言编程环境。ADS除可使用标准C的函数外,又增加了一组专用于对AutoCAD进行操作的函数。由于ADS程序具有C语言的一切优点,因而它曾是开发AutoCAD R11、AutoCAD R12应用程序的主要工具。用C写就的ADS程序,可在所有支持AutoCAD平台上进行源代码移植。只需使用普通的C语言编译器就可以编译生成ADS模块,与ADS库和标准C库链接后生成可执行文件,装入AutoCAD后即可运行。但是ADS和AutoLISP一样,内在结构不是面向对象的,用AutoLISP解释器加载和调用,利用IPC与AutoCAD通讯。
ARX(AutoCAD Runtime eXtension)是在ADS基础上发展起来的一种面向对象的C语言编程环境。由ADS到ARX的变迁就像C到C 的转变。ARX与老式的ADS及AutoLISP的最大差异在于ARX应用程序是动态链接库,共享AutoCAD地址空间,可以对AutoCAD进行直接函数调用,避免了IPC的系统开销和由此引起的性
能下降。因此那些频繁与AutoCAD通讯的应用程序在ARX环境下的运行效率明显优于老式ADS或AutoLISP环境。
ARX最早是在AutoCAD R13中提供的,但在AutoCAD R14中,ARX就被ObjectARX所代替。同时原来的ADS库函数全部被包含在ObjectARX中,将ADS函数合为单一的库就形成了ADSRX。ADSRX库已纳入到AutoCAD的总体结构中,因此它与其他ObjectARX库一样,能共享AutoCAD地址空间。
到了新世纪,传统意义上的ADS开发环境的概念已经不复存在,且ADSRX已成为了ObjectARX的一个子集,因此,ObjectARX是包含了ADS、ARX和ADSRX的一种综合的C/C 开发环境。ObjectARX的最大特点是引入了面向对象的编程机制,用户可以根据规则定制实体也是ObjectARX的一大亮点。
自AutoCAD R14起,提供了ActiveX Automation形式的API。ActiveX技术可将各种二进制应用程序组件集成一体。它可采用多种编程方式例如:VBA构造一种或多种与应用程序独立的宏编程。提供Automation服务的软件组件通过标准接口能够对外开放它的特定功能。
正是由于AutoCAD拥有ActiveX接口,因此,用户可以容易的用各种AciveX编程语言来定制开发AutoCAD。
AutoCAD包含的VBA能在进程内访问AutoCAD的对象模型。亦可以通过独立
的VB进行编程,但是VB与ActiveX的接口需要通过IPC驱动AutoCAD,所以作为ActiveX控件的VBA比VB具有明显的性能优势。
特别要强调的是,ActiveX与AutoCAD交互操作很慢,若需要在外部程序中一边运算一边交互操作的重复迭代,将耗费大量时间,如同死机
值得注意的是,从AutoCAD 2010版本开始,VBA不在随AutoCAD一起安装。如果想要在机器中运行VBA程序必须登录下面的网址进行下载方可运行。
在AutoCAD 2005 版本中Autodesk公司推出了用.NET开发AutoCAD的编程接口。它的实质是通过Managed C /CLR技术对VC 的ObjectARX进行封装。到AutoCAD 2015十年来Autodesk公司已经完成对大部分ObjectARX编程接口的封装。这种编程方式难度适中,能够访问大部分的编程接口(除了自定义实体);但是,由于AutoCAD的.NET接口是在不断的完善过程中导致了在低版本上不能够使用新增的功能。