|
首页 | 名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
38.1.1 ObjectARX简介 ObjectARX 应用程序是动态链接库(DLL),可以和AutoCAD共享地址空间,直接调用AutoCAD的内部函数。在ObjectARX应用程序中定义的命令与AutoCAD的内部命令运行方法一样,而在ObjectARX应用程序中创建的实体对象也和AutoCAD中创建的实体对象没有区别。 目前ObjectARX的版本是ObjectARX for AutoCAD 2002,它是由Autodesk公司在发布AutoCAD 2002时推出的。 使用ObjectARX的用户可以完成各种开发工作,例如: (1) 直接访问AutoCAD的图形数据库。 (2) 和AutoCAD编辑器进行交互。 (3) 使用MFC创建标准的用户界面。 (4) 支持AutoCAD的多文档接口(MDI)。 (5) 在应用程序中自定义类。 (6) 与Visual LISP、ActiveX、COM等编程接口通信。 38.1.2 系统的软、硬件要求 使用ObjectARX for AutoCAD 2002开发工具的软件配置要求为: (1) Microsoft Visual 6.0版本。 (2) Microsoft 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类库 该类库提供了系统级的类和的宏指令集,用于约束一个应用程序以及实时类注册和识别。该类的基类为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]; //点 (3) typedef ads_real ads_matrix[4][4]; //转变矩阵 (4) typedef long ads_name[2]; //实体和选择集名称 2. 常量 ObjectARX中定义了如下几种常量值: (1) #define TRUE 1 (2) #define FALSE 0 (3) #define X 0 (4) #define Y 1 (5) #define Z 2 (6) #define EOS ‘ ’ //字符串结束符 (7) #define PAUSE “\” //暂停符 3. 结果缓冲区和数据类型码 结果缓冲区(result buffer)结构可以用来表示AutoCAD中所有数据类型。该结构中的数据定义为一个联合体,所以数据类型可发生变化;结果缓冲区中的数据的类型通过结构中的数据类型码(type codes)来定义。结果缓冲区结构的定义如下: union ads_u_val{ ads_real rreal; ads_real rpoint[3]; short rint; char *rsting; long rlname[2]; long rlong; struct ads_binary rbinary; }; struct resbuf{ struct resbuf *rbnext; //链表指针 short restype; //数据类型码或DXF组码 union ads_u_val resval; //数据 }; 其中常用的数据类型码及其意义如表38-1所示。 表38-1 结果缓冲区结构中的数据类型码
通常使用链表作为结果缓冲区的数据结构,例如图38-1表示了一个具有三个结点的结果缓冲区链表。
返回类别: AuotoCAD教程 上一教程: DIESEL表达式的调试 下一教程: AutoCAD 命令一览表 您可以阅读与"ObjectARX简介"相关的教程: · 布局简介 · AutoCAD模仿空间与图纸空间简介 · 属性简介、属性的定义与使用 · 外部参照简介和外部参照的附着 · AutoCAD ActiveX简介 |
快精灵印艺坊 版权所有 | 首页会员中心在线印刷在线编辑付款方式索取样品设计指南连锁门店 |