【 tulaoshi.com - autocad教程 】
ObjectARX简介
ObjectARX 应用程序是动态链接库(DLL),可以和Auto
CAD共享地址空间,直接调用AutoCAD的内部函数。在ObjectARX应用程序中定义的命令与AutoCAD的内部命令运行方式相同,而在ObjectARX应用程序中创建的实体对象也和AutoCAD中创建的实体对象没有区别。
目前ObjectARX的版本是ObjectARX for AutoCAD 2002,它是由Autodesk公司在发布AutoCAD 2002时推出的。
使用ObjectARX的用户可以完成各种开发工作,例如:
(1) 直接访问AutoCAD的图形数据库。
(2) 和AutoCAD编辑器进行交互。
(3) 使用MFC创建标准的Windows用户界面。
(4) 支持AutoCAD的多文档接口(MDI)。
(5) 在应用程序中自定义类。
(6) 与Visual LISP、ActiveX、COM等编程接口通信。
38.1.2 系统的软、硬件要求
使用ObjectARX for AutoCAD 2002开发工具的软件配置要求为:
(1) Microsoft Visual C++ 6.0版本。
(2) Microsoft Windows 95或Windows NT4.0以上版本。
使用ObjectARX for AutoCAD 2002开发工具的硬件配置要求为:
(1) CPU至少为Inter Pentium 90 MHz或更高。
(2) 内存至少为32M。
(3) 800×600 SVGA显示适配器或更高。
38.1.3 ObjectARX目录结构
ObjectARX开发工具包括如下几个目录:
(1) ARXLABS:该目录中包含有9个子目录,分别从9个方面对ObjectARX程序开发进行说明和示范。
(2) CLASSMAP:该目录中只有一个名为“classmap.dwg”的图形文件,其内容是说明ObjectARX类的层次结构。
(3) DOCS:该目录中包含有ObjectARX的联机帮助文件。
(4) DOCSAMPS:该目录中包含有32个子目录,分别保存着ObjectARX Developer's Guide 中所用到的例程。
(5) INC:该目录中包含有ObjectARX的头文件。
(6) LIB:该目录中包含有ObjectARX的库文件。
(7) REDISTRIB:该目录中包含有ObjectARX应用程序可能用到的DLL文件。
(8) SAMPLES:该目录中包含有22个子目录,分别保存着一个完整的、具有代表性的ObjectARX例程。
(9) UTILS:该目录下包含有ObjectARX扩展应用程序使用的文件。
38.1.4 ObjectARX的类库简介
ObjectARX开发工具中提供了如下几种类库:
1. AcRx类库
该类库提供了系统级的类和C++的宏指令集,用于约束一个应用程序以及实时类注册和识别。该类的基类为AcRxObject,提供了如下功能:
(1) 对象实时类的标识及继承分析
(2) 对现有类的扩充定义
(3) 对象的比较及检验
(4) 对象的复制
2. AcEd类库
该类库用于注册本地命令和系统事件通知。
3. AcDb类库
该类库提供了可直接访问AutoCAD数据库结构的类,用于对AutoCAD实体和对象进行各种操作。
4. AcGi类库
该类库提供了图形界面工具,用于绘制和渲染AutoCAD实体。
5. AcGe类库
该类库可被AcDb类所引用,可用于线形代数和几何实体的操作。
38.1.5 ObjectARX的变量与常量
1. 数据类型
为了提高程序的可读性,ObjectARX中定义了如下几种数据类型:
(1) typedef double ads_real; //实数
(2) typedef ads_real ads_point; //点
(3) typedef ads_real ads_matrix; //转换矩阵
(4) typedef long ads_name; //实体和选择集名称
2. 常量
ObjectARX中定义了如下几种常量值:
(1) #define TRUE 1
(2) #define FALSE 0
(3) #define X 0
(4) #define Y 1
&nb