基于AutoCAD ObjectARX的二次开发在企业电子图档管理系统中的应用
2015-06-28彭胜
彭 胜
(中铝国际工程股份有限公司,北京100093)
基于AutoCAD ObjectARX的二次开发在企业电子图档管理系统中的应用
彭 胜
(中铝国际工程股份有限公司,北京100093)
文章介绍了CAD二次开发的关键技术和CAD图形数据库的结构原理,提出用带属性定义的块来标准化图框及标题栏数据的解决方案,对CAD图框块属性定义及文件上传有关数据定义进行了分析;并通过图档系统的使用,对设计过程标准化和电子文件的有效性提供了技术支持。
AutoCAD二次开发;ObjectARX; 图档管理系统;设计标准化;信息提取
为了解决设计院图纸归档标准化和电子图纸有效性等问题,提高设计过程的便捷性和效率,图档管理系统在CAD集成方面做了大量的二次开发,客户端采用AutoCAD二次开发ObjectARX技术,直接嵌入到指定的AutoCAD版本中,只要用户启动AutoCAD均会自动加载该图档系统插件,使用户使用时无任何负担,无需改变任何习惯。本系统为用户提供细致的图档收集功能、图签信息提取功能、CAD电子文件智能拆分功能、文件格式自动转换功能和高效的在线浏览查询功能等管理功能,具有很强的实用性和易用性。
1 关键技术
通常在AutoCAD图纸中,图框一般是由多个图元对象组成的,如多义线和文字,这些对象只是在视觉上呈现为图框形式,但对象本身没有内在关联,且其空间位置不能相对固定,在利用计算机识别这种图框时,很难精准定位。因此在制作图框对象时,必须完善图框中所有子图元的联系,使之形成一个可以识别的整体,便于系统自动处理。
AutoCAD环境中的块参照是由多个不同子图元对象组成,子图元之间相对位置固定,具有固定的块名,便于查询定位。另外块参照可以附带属性图元,通过块属性,操作者可以方便的修改块参照的显示特征。因此,采用带属性的块参照来处理图框,能很好地对图框进行识别、定位,并能够通过块属性进行工程名称、子项名称、图纸名称、图号、版次等信息的提取工作。
ObjectARX(AutoCAD Runtime Extend)以面向对象的C++语言为主要开发语言,是基于Microsoft Visual C++的一个功能强大的二次开发工具。ARX应用程序以DLL形式同AutoCAD共享内存的地址空间,可以直接访问AutoCAD的各种内存对象,可以监控和处理AutoCAD的各种消息事件。所以ARX在AutoCAD的众多二次开发工具中功能更强大,代码执行效率和运行速度更高。CAD的二次开发人员能够通过ARX利用AutoCAD的开发框架,直接访问AutoCAD的图形系统与数据库,在二次开发的程序运行时扩展AutoCAD的功能。
AutoCAD图形数据库是一个对象管理器,其管理的是图形及其属性数据的信息。为了方便查找,AutoCAD图形数据库将放在该数据库中的数据进行分类、归档,并引入各种索引表,这些表就是9个符号表和1个命名对象字典,各表中分别存放了不同类型的数据。任何一个对象都从属于某一个上一级的图形数据库对象(容器对象),AutoCAD所有图形对象和非图形对象间的从属关系形成了图形数据库的树状结构。
如图1所示,ModelSpace(模型空间)是一条名为*Model_Space的特殊块表记录,保存在其中的可视化图形对象,可以在绘图区域中的模型空间中显示。块表记录(AcDbBlockTableRecord)储存到块表中叫“块定义”。 “块定义”以块参照(AcDbBlockReference)的形式在模型空间中显示,显示出来的图形就是AutoCAD中的图块。块定义中可以通过属性定义(AcDbAttributeDefinition)给块定义添加属性,定义在块中的属性定义(AcDbAttributeDefinition)需要通过属性参照(AcDbAttributeReference)添加到块参照中随块参照一起显示。
图1 块定义和块参照关系示意图Fig.1 Relationship diagram of block definition and block reference
2 主要功能
程序功能主要是在设计过程中,完成图框和标题栏的标准化设置,使用二次开发的接口界面统一设置标题栏图戳中的内容,在线电子归档过程中可以自动提取此类信息,自动根据图框设置情况打印PLT文件,无需要人工导出PLT文件。使用图档系统后的设计归档出版流程如图2所示。
图2 设计归档出版流程Fig.2 Flow chart of design, archiving and publication
整个设计归档过程的实现可分为以下步骤:
(1)图纸设计
使用插入图框、编辑图框、编辑标题栏等功能辅助完成在AutoCAD 2004下的设计任务;
(2)拆分图框
图档系统要求电子归档时每个dwg文件有且只有一个标准化图框,使用拆分图框完成自动拆分为多个dwg文件并以图号命名的功能;
(3)电子签章
将拆分后的dwg文件根据审核、审定及实际需要,分别进行电子签章;
(4)提交归档上传
填写电子归档单,选择需要归档的电子文件,设置好本地打印样式表,自动根据图纸信息生成PLT文件和DWF文件并统一上传到服务器,实现电子归档;
(5)B/S流程
总师接收到设计者的归档流程后,在B/S系统中可以补充修改归档份数和打印份数等信息,确认无误后通过,由档案室接收。在B/S系统网页中,可以提交高阶段电子文件归档流程或其他文件归档流程。设计者所有启动的流程信息包括CAD中启动的和网页上启动的均可在B/S系统中查看;
(6)文印出版
档案室确认接受后,文印室即可看到打印任务,按照接受顺序完成出版工作,无需设计者再和文印室接触。
3 技术实现
CAD二次开发主要功能点有以下几个方面。
3.1 插入图框功能
通过统一的界面输入,设计人员根据管理端定义的标准图幅,选择图幅参数(幅面大小、图框类型、图幅加长系数等),自动在AutoCAD软件环境中生成标准格式图幅,并可自动插入图号、图名、工程名称等图签信息。
系统需要以对话框为人机交互界面,可以选择输入图形的图幅、比例,放置方向和标题栏样式等信息,系统将自动生成符合要求的图框和标题栏。
目前的图框类型有,图纸标准图戳、卷首页-封面、材料表(中、英文)、设备表(中、英文)、设备及主要材料表(中、英文)、设计变更通知书(中、英文)、设计说明书(中、英文)和图纸目录(中、英文)。
3.2 编辑图框功能
对dwg文件里已经添加的图框,提供编辑修改功能,调整原有图框设置,读取原有设置信息,通过对话框可以重新设置当前图框的图幅信息、比例信息、是否显示会签区等信息。
3.3 编辑标题栏功能
在AutoCAD环境中,通过统一的界面输入,完成标题栏图戳信息设置。自动识别读取图签信息,如图号、图名、阶段等信息。
通过编辑标题栏对话框,可以选择输入当前图形的工程信息、图纸信息、版次和比例等信息,而图纸规格、比例等信息将由用户通过系统生成图框时选择生成,系统将自动填写标题栏信息。
根据实际业务需求,图纸名称和工程名称可根据长度情况选择是否分行,但最多两行。可将填写完整的标题栏信息,通过勾选“保存为模板”再单击“确定”保存在系统中,下次对别的标题栏进行编辑操作时,单击“读模板”可以将之前保存的输入重新复制过来,供修改后参考使用。
不同标题栏样式生成的标题栏在编辑时也会调用不同的编辑窗口。以上模板保存载入功能在所有编辑标题栏功能里通用。
3.4 拆分图框功能
将一个dwg文件中的多个图框拆分为多个dwg文件(每个文件只有一个图框),并自动根据图号命名。若一个dwg格式文件包含多幅设计图纸,系统可自动将其拆分成多个dwg格式文件,每个dwg格式文件包含一幅设计图纸。以工程图号自动命名拆分后的文件名,同时配以版本号,文件名须具有唯一性。
3.5 归档上传功能
填写电子归档单,选择需要归档的电子文件,设置好本地打印样式表,自动根据图纸信息生成PLT文件和DWF文件并统一上传到服务器,实现电子归档。
系统支持将dwg文件格式自动批量转换为PLT/DWF等格式文件。文件名以工程图号自动命名拆分后的文件名,并配以版本号,文件名须具有唯一性。
打印时,程序从需要打印的图纸中捕捉图框块参照,并根据图框块参照的界限范围和图纸比例确定图纸尺寸。系统在AutoCAD绘图环境中设定好对应的各种页面设置,实现程序自动打开文件,扑捉图框,配置打印设置,并发送至所需的打印机进行出图。
4 总结
规范图框的绘制标准后,充分利用CAD的二次开发技术,利用软件能够有效提高工作效率,降低设计人员的重复劳动,将用户从人工管理和查寻图纸的繁重、低效劳动中彻底解脱出来。不仅保证了归档文件的高质量和归档的及时性,而且通过对图纸进行有效信息提取大大减轻了归档时大量图纸信息的输入工作。
通过图档管理系统的实施,确保CAD电子文件完整、及时、准确地归档,实现工程设计电子档案全生命周期管理,帮助设计院实现标准化收档、自动化归档、规范化管档、网络化用档,达到了技术先进、安全稳定、信息共享、便捷高效的技术要求和使用要求。
[1] 刘二洋.基于DWGdirect技术的公路工程图纸文件转换[J]. 中国交通信息化,2013,(3):
[2] 刘中合,李邦明,王瑞雪,刘贤喜. 一种基于Web的电子图档管理系统的设计[J].机械工程与自动化,2006,(1):
Application of Secondary Development Based on AutoCAD ObjectARX in Enterprise Electronic Document Management System
PENG Sheng
(China Aluminum International Engineering Co., Ltd., Beijing 100093, China)
The paper presented critical technologies and structure principle respectively for CAD secondary development and CAD graphics database; it proposed solutions to standardize frame and title block data using blocks with attribute definitions, it analyzed attribute definition of CAD blocks and definition of related data for file uploads; it pointed out that document management system can also provide technical support for implementing design process standardization and effective electronic archiving. Keywords: AutoCAD secondary development; ObjectARX; document management system; design standardization; information extraction
2015-08-06
TP311.52
A
1671-6795(2015)05-0060-03