|
摘要:在开发工程图管理系统及实施PDM过程中,高效、准确地自动提取图纸标题栏信息,实现大量现存电子工程图档的自动入库是一个关键技术。本文利用ActiveX Automation技术实现了对DWG、DXF格式电子图档的标题栏、明细表等信息的无损失提取和自动入库,并对于提取过程中的标题栏模板定义和提取算法进行了分析说明。
引 言 目前,广大CAD用户一方面从CAD等技术的推广应用中明显地提高了设计能力和图纸质量,减少了差错,降低了返工率;另一方面,由于CAD技术的全面推广,一系列新问题又摆在了企业的面前。问题主要反映在四个方面:资料管理、计划管理、产品配置管理、更改管理。由此便引发了企业对开发和实施产品数据管理系统(PDM)的需求。 从资料管理角度考虑,PDM系统可以解决这样的问题:一个产品会产生大量的文件和图纸,而一系列的新产品必须承袭老产品中约80%的成果,所以经常需查阅老产品的设计图纸。国内外许多企业都使用AutoCAD作为CAD平台,大量的设计信息以DWG或DXF文件的形式存在,这些图纸和文本文件可能存放在某些设计部门计算机的某些目录下,用户如果用手工方式查询有关资料,往往要花费大量的时间和精力。从图纸管理系统发展起来的PDM系统能够很好地解决这个问题,用户可以使用PDM系统根据图号、项目、设计人、工作阶段、审批情况、日期、类型以及预先定义的各类参数(如材料、重量等)作为条件进行查询。这些查询条件通常都是图纸标题栏和明细表中的信息,但是用户在能够正常查询之前,需要逐个将旧图纸标题栏输入PDM数据库中,这也是一个工作量很大的任务。 本文的工作就是要解决图纸标题栏信息自动批量入库问题。DWG作为AutoCAD的缺省文件格式,其内部结构尚未公开,但DXF文件格式虽然是AutoCAD软件用来进行数据交换的公开格式文件,但DXF文件格式却经常随AutoCAD版本变化而变动,通过直接读取DXF文件的方式开发软件不但费时费力,而且可能会出现版本不兼容和信息丢失等问题。 本文介绍了一种利用AutoCAD R14版提供的新一代开发接口技术——ActiveX Automation,结合VB、VC、Delphi或PowerBuilder等数据库前端开发工具提供的OLE自动化技术,通过访问AutoCAD R14的对象模型,直接提取DWG和DXF文件的标题栏、明细表信息的方法,很好地解决了图纸自动入库的问题。 1 AutoCAD R14的ActiveX Automation技术概述 AutoCAD R14中的ActiveX Automation[2]是微软公司ActiveX规范的具体应用。它通过基于ActiveX的自动化对象,为其他应用程序提供了访问AutoCAD内部功能的方法,是AutoCAD最新的开发接口。在运行时态,AutoCAD与其他应用程序之间的关系是服务器与客户的关系,开发人员使用支持ActiveX规范的编程语言(如VB、VC等)能通过访问AutoCAD的对象模型,把AutoCAD的强大功能集成到应用程序中。本文就是使用VB语言访问对象模型,获取DWG、DXF文件中标题栏的信息。......More↓↓↓
|