ObjectARX类库简介

简介: ObjectARX环境包含下列几组类和函数: AcRx             用于绑定应用程序及运行时类的注册和标识的类。AutoCAD Registration Extension; AcEd             注册本地AutoCAD命令和AutoACD事件通知的类。AutoCAD Envent Directory; AcDb             AutoCAD数据库类
ObjectARX环境包含下列几组类和函数:

AcRx             用于绑定应用程序及运行时类的注册和标识的类。AutoCAD Registration Extension;

AcEd             注册本地AutoCAD命令和AutoACD事件通知的类。AutoCAD Envent Directory;

AcDb             AutoCAD数据库类。AutoCAD DataBase ;

AcGi              显示AutoACD实体的图形类。 AutoCAD Graph Interface;

AcGe             公用线性数学和几何学对象应用类。 AutoCAD Geometry Entity;

AcRx库提供了一些系统级类,用于DLL的初始化和链接及运行时类的注册和标识。该库的基类是AcRxObject,它提供如下功能:对象运行时 类标识和继承分析、运行时向既有类添加新协议、对象比较测试、对象复制。运行时类型标识是AcRxObject的每个子类都有一个相关的类描述者对象 (AcRxClass类型),用于运行时类型的标识。最常用函数:
        AcRxObject::isA();          用于类识别,被识别的类必须能够测试其类型。
        AcRxObject::isKindOf();  也是用于类识别,但这里的类能够被测试其类型,或者测试其派生类的类型。
        AcRxObject::desc();     返回类名。
        AcRxObject::cast();    试图将一个基类转换成更高级的类。如果转换成功,基类对象的指针将是转换后类型的指针。

该库也可以对应用程序进行加锁或解锁。使用函数::acrxUnlockApplication()可以使应用程序不可卸载。

AcEd库提供定义和注册新的AutoCAD命令的类,新命令的操作性能与AutoCAD内部命令是完全一样的。我们定义的新命令被当作本地命令是 因为它们与AutoACD内部命令具有相同的内部结构(AcEdCommandStack)。AcEd库还提供编辑器反应器和一套与AutoCAD通信的全局函数。注:该库中一个重要的类是 AcEditorReactor,它监视AutoCAD编辑器的状态,并当指定事件发生时(如形开始、终止和删除命令)通知应用程序。

AcDb库提供了组成AutoCAD数据库的类。AutoCAD数据库用于存储所有的图形对象和非对象;图形对象称为实体,组成AutoCAD图; 非图形对象(如层、线型和字型)也是图形的一部分。同时我们可以使用AcDb库查询和管理AutoCAD实体的实体对象,也可以创建新的数据库对象实例。 AutoCAD数据库包含如下主要元素:九个符号表,每个表都拥有唯一的命令符号表条目对象,这些对象表示各种常用的AcDbDatabase对象和数据 成员;命名的对象词典(类AcDbDictionary),提供AutoCAD图的目录表。对于新图来说,该目录表包含四个AutoCAD使用的其他词典 ID,同时我们的应用程序可以任意向该词典添加其他的对象;一套固定的环境变量,大约200个环境变量,其值上由AutoCAD设置的。

AcGi库提供了用于绘制AutoCAD实体的图形界面,AcDbEntity成员函数worldDraw()、viewportDraw()和saveAs(),及所有标准实体协议部件都使用AcGi库。

AcGe库提供了应用类,如向量和矩阵,用来完成二维和三维几何操作,它还提供基本的几何对象,如点、曲线和表面。AcGe还包含两个主要子集:二维和三维几何类,主要抽象基类分别为AcGeEntity2d和AcGeEntity3d。它提供了几何计算和数学计算函数,如矢量、点、矩阵的的运算等。在cad中每一个实体都有一个相对应的等价几何形状,他有助于在创建对应的真实感实体时进行数学计算。该库提供用于2D和3D计算的几何函数。例如,如果一条直线通过一个圆的附近,且需要求出直线到圆上的最近点,那么用库中的几何函数就可以求出所需要的点。

ObjectARX目录结构

├─arxlabs           目录存放AutoCAD ARX使用指南。

├─classmap        目录存放AutoCAD图形形式的ObjectARX类层次结构图。

├─docs              目录存放ObjectARX开发者的在线帮助文件,

├─inc                 ObjectARX头文件。

├─lib                  ObjectARX库文件。

├─redistrib         ObjectARX应用程序运行所需要的DLL文件。

├─samples          ObjectARX例子目录。

└─utils               ObjectARX的扩展和开发小工具。如用于边界表达的brep和ObjectARX向导ObjARXWiz。

AcRx: acad.lib, rxapi.lib, acdb16.lib
AcEd: acad.lib, rxapi.lib, acedapi.lib, acdb16.lib
AcDb: acad.lib, rxapi.lib, acdb16.lib
AcGi: acad.lib, rxapi.lib, acdb16.lib
AcGe: acad.lib, rxapi.lib, acgeapi.lib, acdb16.lib
目录
相关文章
|
7月前
|
IDE 开发工具 数据库
AutoCAD ObjectARX开发包
AutoCAD ObjectARX开发包
111 2
|
开发工具
visual studio单项目一次生成多框架类库、多框架项目合并
目录 不同平台框架项目使用同一套代码,一次编译生成多个框架类库 需要先了解的东西 分析 添加PropertyGroup 多目标平台 编译符号和输出目录设置 添加依赖 代码文件处理 主副平台项目文件处理 最后 补充 自动生成内部版本号 nuget包相关 不同平台框架项目使用同一套代码,一次编译生成多个框架类库 需要先了解的东西 msbuild .
1445 0
|
存储 监控
NAnt 简介
表达式是一种简单而强大的机制,允许写高级的公式,用于 task 的参数和条件式中,这样就可以控制连编过程了。表达式能够访问 project 的属性、调用内建的或者用户定义的functions 。
1587 0