华辉建设设备
免费服务热线

Free service

hotline

华辉建设设备
热门搜索:

AutoCAD2000全面兼容ADS应用MC

发布时间:2021-12-25 04:54:46阅读:来源:华辉建设设备
AutoCAD2000全面兼容ADS应用MC

AutoCAD2000全面兼容ADS应用程序AutoCAD,开发系统

介绍

就象C 语言已经被集成在C++ 语言中一样,AutoCAD 开发系统(ADS)也已经被集成在AutoCAD 2000 中的ObjectARX 中了。这就意味着并不是只有用面向对象语言编写的应用程序才能充分利用AutoCAD 2000 中 ObjectARX 的先进功能,而且现有的ADS 的应用程序也不用被重新编制了。

AutoCAD 2000 的ObjectARX 继续支持所有ADS C 的库函数。为了使AutoCAD 成为一个完全的Windows 的应用程序,在AutoCAD 2000 的ObjectARX 中已不再提供对ADS 中对老式的、非 DLL 接口的支持。当移植ADS 应用程序到AutoCAD 2000 上时,只要用ObjectARX 函数库中的 ADS 接口重新编译源程序即可,而且还会把ObjectARX 中的先进功能自动加入到ADS 应用程序中。

概述:在AutoCAD 2000 中的ADS

在AutoCAD 2000 中,ADS 部分有下面的变化:

源程序是用ObjectARX 的函数库进行编译的,生成的是以 “.ARX”为扩展名的动态连接库文件(DLL)。 加载ADS 的应用程序和加载ObjectARX 应用程序的方法是一样的。 ADS 的函数库不是和AutoCAD 2000 一起被提供的,但可以在Web 上下载。 函数名已经被修改了,但提供了对旧的“ads_xx”函数名的定义。 不再提供AutoLISP 中的 (xload) 和 (xunload) 函数。 不再支持低效率的 ADS EXE 程序。

应用程序的向上兼容性

为了保护用户在ADS 上的投资及努力,Autodesk 在新产品中仍保持了对应用程序最高级别的向上兼容。对于AutoCAD 的应用程序有两种兼容类型:

AutoLISP 中的解释应用程序,或者没有编译的 Visual LISP 程序几乎可以100%地在新版本的AutoCAD 中兼容。对于AutoCAD 2000,要有一些针对多文档设计环境(MDE)的改变。要想得到更多的信息,请参考在SDK 中的移植手册,或在AutoCAD 2000 中的移植帮助。 已编译的ADS、ObjectARX、Visual LISP 或者 VBA程序,是在源代码级进行兼容的。必须把源程序和AutoCAD 2000 的函数库一起重新编译合成的进程还伴随着降解,在改动很小的情况下就可以集成进ObjectARX的新特征及应用新的API。

AutoCAD 中ADS 技术介绍

最初的ADS

在 1989 年,AutoCAD R10 在OS/2? 平台上引入了ADS 作为一个新的开发应用程序的编程环境。在 1990 年,AutoCAD R11 也提供了在DOS 及其它操作系统上的对ADS 的支持。AutoCAD 和ADS 的应用程序是不同的可执行程序(.EXE), 它们通过内部进程通讯(IPC)进行数据交换。

基于ADS 的程序是用C 语言编写的,然而,这些程序的运行情况和AutoLISP 程序是一样的,因为作为外部编译过的ADS 程序是由AutoLISP 解释器加载的。而AutoLISP 解释器是由AutoCAD 加载并调用的。

ADS 程序是由C 语言编制的,因此相对于AutoLISP 具有一些编译程序的优点,例如这些优点可以表现在以下一些方面:源程序的安全性,内存操作的效率,文件尺寸及运行速度。

和标准的C 语言函数库一样,ADS 系统也是由一些库文件和头文件组成的。ADS 函数库提供了所有必要的工具及函数用来与AutoLISP 及AutoCAD 进行数据通讯。ADS的函数名都是以“ads_”为前缀的,这就很容易和标准的C 函数区别开。

ADS 在AutoCAD R13 中的变化

AutoCAD R13 向开发商提供了能够直接存取的、面向对象的内核,最初被命名为AutoCAD 运行扩展,或ARX。这个面向对象的内核最终被命名为ObjectARX,是AutoCAD 的第一个C++ 的编程接口。做为动态连接库(DLLs),ObjectARX 应用程序可以在AutoCAD 运行时存取其内核及内存地址空间,就象AutoCAD 自己的特征做的一样。

O凡是在两夹具之间的试样都会得到不同程度的拉伸变形bjectARX 的应用程序能够存取AutoCAD 中的符号表和系统变量、操作选择集、提示用户输入、进行坐标转换及查询(如捕捉和点取点)和控制图形显示。这些功能在ADS 中也能做到,因此很自然地也被包含到了ObjectARX 中。

把ADS 功能集成进ObjectARX 中,可以使C++ 的应用程序兼容已有的C的应用程序。通过由动态连接库共享AutoCAD 的内存地址空间,ADS 应如紧缩、延续加载、曲折、改变、耐久性、冲击等时所表现出的力学特点用程序就不再需要通过IPC和AutoCAD 进行通讯了。

从AutoCAD R13 开始,需要做下面几步来转换非DLL 或IPC 类型的ADS 应用程序到ObjectARX:

把main() 入口点和控制循环改成acrxEntryPoint() 把源程序的文件的扩展名由“.c”改成“.cpp” 应用支持C++ 的编译器

下表是AutoCAD 致力于下降工厂研发、生产制造本钱R13 提供的对ADS 的支持:

最火今日工业普圆价格查询18MC
最火中国铝罐11月22日回购94万股耗资15MC
最火1日上海市场方矩管价格行情MC
最火16日呼和浩特市场镀锌管价格行情MC